XMLHTTP开发Web 客户端 - 中国WEB开发者网络 (http://www.webasp.net) -- 技术教程 (http://www.webasp.net/article/) --- XMLHTTP开发Web 客户端 (http://www.webasp.net/article/28/27586.htm) |
| -- 作者:未知 -- 发布日期: 2006-04-27 |
| 关键字:XMLHTTP,XML,Web客户端,C#,ASP
所有的知识都不是最新的知识点,关键是达到自己的设计目的。 某些时候,我们可能需要客户端做点什么以简化复杂的脚本处理,比如加密之类的等。 不管用什么样的客户端,首先我们应该确定我们遵守的协议,或者说如何设置或获取我的数据。这里,我们的服务器端为IIS5的ASP程序,所以我们首先遵守的是HTTP协议,然后在HTTP协议上传输XML。用XML是因为更容易统一我们的数据格式,有XML这种思想我们为什么不用呢。 恰好XMLHTTP,就是基于HTTP传输XML的很方便的类。 首先简要说一下XMLHTTP的两个函数: open(bstrMethod, bstrUrl, varAsync, bstrUser, bstrPassword) 按照bstrMethod指定的HTTP方法(如POST,GET等)打开bstrUrl指定的连接,其中varAsync为是否异步,bstrUser, bstrPassword为访问bstrUrl时需要用户及密码。 send(varBody) 发送的数据,或者应该说是提交的数据。 具体可以查看相关的MSXML SDK。 以下利用C#实现XML的传输,假定反馈的XML格式为"<RESPONSE><ERROR ID=\"0\">成功</ERROR></RESPONSE>" private MSXML2.DOMDocument40Class zXml; // 处理服务器反馈结果 private string zLastErrorDescription; private const int OkSuccess=0; //以Err打头的都是一些常量 private int ExecuteCmd(string sCmd, string method, string ext) { //根据sCmd计算出sURL的代码省略。 //…… try // 检查zXmlHttp的状态 if(s.Length==0) zLastErrorDescription = GetXmlNodeValue(zXml, "/RESPONSE/ERROR"); return zLastErrorCode; 然后是服务器端的Test.asp <% LANGUAGE=VBSCRIPT %> <% Dim oXml Set oXml = Server.CreateObject("Msxml2.DOMDocument.4.0") oXml.load Request Set oXml = Nothing '最后是反馈处理结果 最后要说的是传输的XML数据格式,可以说就是你自己定义的协议了,以上只不过是抛砖引玉而已。努力,一切在你自己。 |
| webasp.net |