`
齐晓威_518
  • 浏览: 617823 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

使用xmlhttp.send()方法的参数来传递大容量的数据

 
阅读更多
使用xmlhttp.send()方法的参数来传递大容量的数据
Posted on 2009-01-12 16:31 MARTIALIS 阅读(624) 评论(0) 编辑 收藏 所属分类: ASP.NET
Ajax技术中的xmlhttp.send()方法提供我们传送大量数据的功能,要使用该功能,首先要将要传到服务端的数据封装在一个xml对象中,在将这个xml对象的xml属性做为send()方法的参数就可以.
    客户端代码:
                     var  guidArray = guidlist.split( " , " );
                     var  xmlDom = new  ActiveXObject( " MSXML2.DOMDocument " );
                    xmlDom.loadXML( "" );
                     var  domRoot =  xmlDom.createElement_x( " NewDataSet " );
                    xmlDom.appendChild(domRoot);
                     for ( var  i = 0 ;i < guidArray.length;i )
                    {
                        var  node =  xmlDom.createElement_x( " 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.getElementByIdx_x( " btProcessResult " ).value)
                                          " &sReStore= " escape(document.getElementByIdx_x( " 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说明文档,xmlhttp中文帮助文档,chm格式

    XmlHttp.send getHtmlStr = StrConv(XmlHttp.ResponseBody, vbUnicode) Set XmlHttp = Nothing vb中下载文件的方法: Dim XmlHttp, Sobj Set XmlHttp = CreateObject("Microsoft.XMLHTTP") XmlHttp.Open ...

    xmlhttp.rar_xmlhttp

    而对于POST请求,可以将数据作为参数传递,如`xmlhttp.Send("key=value&anotherKey=anothervalue")`。 3. **处理响应**:通过`ReadyState`属性监控请求状态,当`ReadyState`为4(表示请求完成)且`Status`为200...

    XmlHttp.rar_xmlhttp

    ` 或 `xmlhttp.send('param1=value1&param2=value2');` 3. **status** 属性:返回HTTP响应的状态码,如200表示成功,404表示未找到资源,500表示服务器内部错误。 4. **statusText** 属性:返回对应于status属性的...

    Microsoft.XMLHttp组件的属性方法

    xmlhttp.send(); ``` 3. `setRequestHeader()`方法:设置HTTP请求头。例如,为POST请求指定Content-Type: ``` xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); ``` 三、...

    VB使用Microsoft.XMLHTTP判断程序是否联入互联网

    xmlHttp.Send(Null) i = Now() Do DoEvents Loop Until xmlHttp.ReadyState = 4 Or j = DateDiff("s", i, Now()) &gt; 2 If j = 0 Then If xmlHttp.ResponseText = "" Or IsNull(xmlHttp.ResponseText) Then ...

    VB使用XMLHTTP实现Post与Get的方法

    XMLHTTP.send ' 等待请求完成 While XMLHTTP.ReadyState &lt;&gt; 4 DoEvents Wend ' 根据DataStic参数返回不同的响应 Select Case DataStic Case ResponseText GetData = XMLHTTP.ResponseText Case ...

    XMLHTTP.rar_xmlhttp

    7. **POST请求的使用**:POST请求常用于提交表单数据,通过`setRequestHeader()`设置`Content-Type`,然后在`send()`中传递数据。 8. **异步处理**:异步是XMLHTTP的核心特性,允许在请求进行时继续执行其他脚本,...

    XMLHTTP中setRequestHeader参数问题

    ajax 请求头部设置 XMLHTTP中setRequestHeader参数问题

    xmlhttp.rar_XMLHTTP delphi_delphi xmlHt_delphi xmlhttp_xmlhttp

    这个“xmlhttp.rar”压缩包包含的资源是关于如何在Delphi环境中使用XMLHTTP组件来从网络获取数据,特别是通过调用百度API获取实时时间的示例。这对于初学者来说是一个很好的起点,因为它可以帮助理解如何与Web服务...

    易语言源码XMLHTTP方式访问网页.rar

    在易语言中,我们可以通过内置的网络库来实现XMLHTTP的功能,从而实现与服务器的通信,获取或发送数据,而无需刷新整个页面。 首先,我们需要了解易语言中的网络库。易语言提供了丰富的网络函数,包括TCP、UDP、...

    WEB QQ登录VB实例

    XmlHttp.send stime = Now '获取当前时间 While XmlHttp.ReadyState &lt;&gt; 4 DoEvents ntime = Now '获取循环时间 If DateDiff("s", stime, ntime) &gt; 3 Then getHtmlStr = "": Exit Function '判断超出3秒即超时...

    XMLHTTP对象参考手册

    客户端可以通过XmlHttp对象(MSXML2.XMLHTTP.3.0)向http服务器发送请求并使用微软XML文档对象模型Microsoft® XML Document Object Model (DOM)处理回应。 现在的绝对多数浏览器都增加了对XmlHttp的支持,IE中使用...

    xmlHTTP.rar_xmlhttp_xmlhttp java_xmlhttp下载

    在"xmlHTTP.rar"这个压缩包中,我们可能找到了一个关于xmlhttp使用的示例。"xmlHTTP"可能是包含JavaScript代码的文件,该代码展示了如何创建和使用XMLHttpRequest对象来发送HTTP请求并接收响应。通过这种方式,...

    易语言源码易语言XMLHTTP类模块源码.rar

    在易语言中,可以通过调用Windows API或封装的易语言模块来使用XMLHTTP类,实现网页数据的抓取、Web服务的调用等功能。 首先,我们需要了解XMLHTTP的基本使用方法。在易语言中,可以创建XMLHTTP对象,然后设置其...

    获取百度网络时间,Microsoft.XMLHTTP实例

    xmlHttp.Send ' 检查请求是否成功 If xmlHttp.Status = 200 Then ' 获取并处理服务器返回的时间数据 responseText = xmlHttp.responseText ' 这里需要根据实际返回的数据格式进行解析,假设返回的是ISO 8601格式...

    使用XMLHTTP获取天气预报

    xmlhttp.Send(null); ``` 在这里,因为我们是发送 GET 请求,所以没有需要传递的数据,因此 `Send` 方法传入 `null`。 一旦请求完成,我们需要处理响应。这通常通过设置 `onreadystatechange` 事件处理器来实现,它...

    Ajax 给 XMLHttpReq.onreadystatechange传递参数

    在JavaScript中,有两种常见的方法来实现这一目标: 1. **匿名函数包裹**: 你可以将需要调用的函数(例如`proce`)包裹在一个匿名函数中,并将参数作为参数传递给这个匿名函数。例如: ```javascript xmlhttp....

Global site tag (gtag.js) - Google Analytics