【IT168技术文档】
本例包括
1.客户端用xmlHTTP 向服务器页面发送请求
2.服务器页面后台用C#中DataSet实现数据库的操作 并得到结果
3.客户端用xmlDOC 得到xmlHTTP返回的结果 并对结果进行操作
附录
XMLHTTP的常用方法和属性
XMLDOC的常用方法和属性
========================= 发送xmlHttp请求到服务器端 ========================= var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); xmlhttp.open("GET","Default2.aspx",false,"",""); xmlhttp.send(); ====================== 服务器端的相关数据处理 ======================
以下内容 摘录于网上 对原作者的用心整理和无私分享表示感谢protected void Page_Load(object sender, EventArgs e) { //连接数据库 SqlConnection myConn = new SqlConnection("Data Source=192.168.0.36;Initial Catalog=Northwind;User ID=sa;Password=sa"); SqlDataAdapter myda = new SqlDataAdapter("select top 5 * from orders", myConn); DataSet myds = new DataSet(); myConn.Open(); myda.Fill(myds); myConn.Close(); // 把xml对象发送给客户端 Response.ContentType = "text/xml"; Response.Write(myds.GetXml()); Response.End(); } ============================================= xmlDOC 得到xmlHTTP返回的结果 并对结果进行操作 ============================================= // 从服务器得到处理后的xml对象 var xmldom = new ActiveXObject("Microsoft.XMLDOM"); xmlhttp.responseXML.createProcessingInstruction("xml"," version=\"1.0\" encoding=\"gb2312\""); xmldom = xmlhttp.responseXML.documentElement; //alert(xmldom.xml); // 通过xmldom操作结果 var length = xmldom.getElementsByTagName("OrderID").length; alert(length);
========
XMLHTTP
========
Open方法
包含了5个参数,前三个是必要的,
后两个是可选的(在服务器需要进行身份验证时提供)。
参数的含义如下所示:
http-method: HTTP的通信方式,比如GET或是 POST
url: 接收XML数据的服务器的URL地址。通常在URL中要指明 ASP或CGI程序
async: 一个布尔标识,说明请求是否为异步的。
如果是异步通信方式(true),客户机就不等待服务器的响应;
如果是同步方式(false),客户机就要等到服务器返回消息后才去执行其他操作
userID 用户ID,用于服务器身份验证
password 用户密码,用于服务器身份验证
用Open方法对Request对象进行初始化后,调用Send方法发送XML数据
Send方法
参数类型是Variant,可以是字符串、DOM树或任意数据流。
发送数据的方式分为同步和异步两种。
在异步方式下,数据包一旦发送完毕,就结束Send进程,客户机执行其他的操作;
而在同步方式下,客户机要等到服务器返回确认消息后才结束Send进程。
XMLHTTP对象中的readyState属性
能够反映出服务器在处理请求时的进展状况。
客户机的程序可以根据这个状态信息设置相应的事件处理方法。
值 说明
0 Response对象已经创建,但XML文档上载过程尚未结束
1 XML文档已经装载完毕
2 XML文档已经装载完毕,正在处理中
3 部分XML文档已经解析
4 文档已经解析完毕,客户端可以接受返回消息
客户机接收响应是通过XMLHTTP对象的属性实现
responseText:将返回消息作为文本字符串;
responseBody:将返回消息作为HTML文档内容;
responseXML:将返回消息视为XML文档,在服务器响应消息中含有XML数据时使用;
responseStream:将返回消息视为Stream对象