使用xmlhttp.send()方法的参数来传递大容量的数据
2009-01-12 16:31
639 查看
Ajax技术中的xmlhttp.send()方法提供我们传送大量数据的功能,要使用该功能,首先要将要传到服务端的数据封装在一个xml对象中,在将这个xml对象的xml属性做为send()方法的参数就可以.
客户端代码:
服务端需要从请求流中,解析出客户端传入的xml的内容,服务端代码:
System.IO.Stream instream = Page.Request.InputStream;
BinaryReader br = new BinaryReader(instream,System.Text.Encoding.UTF8);
byte[] byt = br.ReadBytes((int)instream.Length);
string sXml = System.Text.Encoding.UTF8.GetString(byt);
System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument();
xmlDoc.LoadXml(sXml);
XmlElement xe= xmlDoc.DocumentElement;
for(int i=0;i< xe.ChildNodes.Count;i++)
{
sGuid = sGuid + ",'" + xe.ChildNodes[i].InnerText+"'";
}
客户端代码:
var guidArray = guidlist.split( " , " ); var xmlDom = new ActiveXObject( " MSXML2.DOMDocument " ); xmlDom.loadXML( "" ); var domRoot = xmlDom.createElement( " NewDataSet " ); xmlDom.appendChild(domRoot); for ( var i = 0 ;i < guidArray.length;i ++ ) { var node = xmlDom.createElement( " guid " ); node.text = guidArray[i]; domRoot.appendChild(node); } var xmlhttp = new ActiveXObject( " MSXML2.XMLHTTP " ); xmlhttp.onreadystatechange = function (){ if (xmlhttp.readyState == 4 ) { if (xmlhttp.status == 200 ) { alert( " 处理完成 " ); } else { alert(xmlhttp.responseText); } } } xmlhttp.Open( " POST " , " fmSmsPostProcess.aspx?sStatus= " + escape(sStatus) + " &sProcessResult= " + escape(document.getElementById( " btProcessResult " ).value) + " &sReStore= " + escape(document.getElementById( " btReStore " ).value), true ); xmlhttp.setRequestHeader( " Content-Type " , " text/xml " ); xmlhttp.send(xmlDom.xml);
服务端需要从请求流中,解析出客户端传入的xml的内容,服务端代码:
System.IO.Stream instream = Page.Request.InputStream;
BinaryReader br = new BinaryReader(instream,System.Text.Encoding.UTF8);
byte[] byt = br.ReadBytes((int)instream.Length);
string sXml = System.Text.Encoding.UTF8.GetString(byt);
System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument();
xmlDoc.LoadXml(sXml);
XmlElement xe= xmlDoc.DocumentElement;
for(int i=0;i< xe.ChildNodes.Count;i++)
{
sGuid = sGuid + ",'" + xe.ChildNodes[i].InnerText+"'";
}
相关文章推荐
- 使用xmlhttp.send()方法的参数来传递大容量的数据
- 使用xmlhttp.send()方法的参数来传递大容量的数据
- 使用xmlhttp.send()方法的参数来传递大容量的数据
- 使用xmlhttp.send()方法的参数来传递大容量的数据
- Ext.data.JsonStore使用HttpProxy加载数据时传递参数的两种方法
- 使用XSLT转换XML数据并传递参数
- 在今天的测试过程中,我刚开始使用get方法传递参数,出现乱码,但是使用post传参数好着的,需要在tomcat的server.xml里面进行设置URIEncoding="UTF-8"即可
- 在数据绑定控件中使用LinkButton传递参数方法
- AngularJS $http post 传递参数数据的方法
- 原始ajax通过xmlHttpRequest对象的send()方法提交数据--Get方式和Post方式
- ajax xmlhttprequest使用post传参数并向后台获取数据
- 在数据绑定控件中使用LinkButton传递参数方法
- 使用asx3m与xstream配合解决flex与java利用httpservice传递xml数据问题
- AJAX技术使用XMLHttpRequest对象传递参数的中文乱码问题
- XMLHttpResponse send 方法参数
- 使用asx3m与xstream配合解决flex与java利用httpservice传递xml数据问题
- 使用asx3m与xstream配合解决flex与java利用httpservice传递xml数据问题
- Tomcat + Spring MVC + HttpClient:如何使用PUT和PATCH方法传递数据
- jQuery的ajax()检验用户名;通过jQuery的load()/get()/post()方法实现;使用XMLHTTPRequest对象来进行AJAX的异步数据交互
- Ajax 给 XMLHttpReq.onreadystatechange传递参数