下面这个XMLHTTP: 网站超级粘合剂教程由图老师小编精心推荐选出,过程简单易学超容易上手,喜欢就要赶紧get起来哦!
【 tulaoshi.com - Web开发 】
简介
许多ASP开发者都希望在自己的网站中能够使用到微软提供的支持XML
的新功能。其中,有些人发现可以使用XML来装饰网站,但是,如果仅仅
是只使用XMLDOM的话,你就会失去其他一些更重要的东西。毕竟,XML是用来
作为一种网上数据表现和数据交换的形象出现的。尽管使用XML可以非常满意
地描绘你的数据,但是开发者却不得不使用CGI来进行浏览器和服务器之间的
数据交换,除非你在浏览器端和客户端都使用XML文档。
当然CGI从传达信息的角度来说是能够完全胜任的,但是如果要是和XML来
一起使用的话就让XML失去了很多自己的用处。幸运的是,微软提供了一种更加
有效的方法来传输XML,虽然该方法在很大程度上并不被人所重视。
在微软提供的MSXML解释器包中有一系列的对象,也许没有人会重视其中的
XMLHTTPConnection对象。简而言之,它允许你打开一个到服务器上的HTTP连接,
发送一些数据和取回一些数据。并且所有的这一切都是在很少的几段脚本中就能够实现。
使用XMLHTTP对象通常是进行XML数据交换,但其他格式的数据也是允许的。
在商业程序中的运用
这种交换类型的标准模式是客户端发送一个XML格式的文本字符串到服务端,
然后服务端将这个字符串装载入一个XMLDOM对象中并且解释它,然后返回一段
HTML给客户端,或则是另外一段XML代码给客户端让客户端的浏览器自己解释。
在这种方式下,对于信息的传递来说是非常有效的形式,尤其是当你使用
DHTML允许你根据返回信息动态显示时。
举例如下(只能够运行在客户端和服务端都安装有IE5的情况下)
%
if (Request.ServerVariables("REQUEST_METHOD") == "POST" )
{
var req= Server.CreateObject("Microsoft.XMLDOM");
req.async=false;
req.load(Request);
if (req.documentElement.nodeName=="timesheet")
{
//对数据随便进行一些处理。。。
.....
Response.write("h1Timesheet Updated!/h1b"+req.documentElement.text+"/b");
}
}
else
{ %
div id="divDisplay"The response will be put in here/div
input type="button" onclick="sendData();" value="Send it!"
script
function sendData(){
var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.Open("POST", "http://www.yoursite.com/thispage.asp", false);
xmlhttp.Send("timesheetAn impossibly useless timesheet fragment/timesheet");
divDisplay.innerHTML=xmlhttp.responseText;
}
/script
% } %
在上面的代码中,其中客户端的脚本将建立一个适当的COM对象,打开一个在网站
www.yoursite.com的连接(使用了HTTP的POST方法,同步方式),使用Send方法发送
一个XML片段,然后根据服务器上的响应填充divDisplay区域(这里使用了DHTML)。
具体的执行过程是,在服务器上,Request对象被转载入一个XML文档然后被解释器解释。
服务器响应XMLHTTP连接的方式和响应其他任何方式的HTTP连接是一样的,也是使用了
Response对象。注意的是XMLHTTP本身并不检查request或则response的有效性,也就是说
Request或则Response中的数据可是并不需要一定是XML文档。
“聪明,”你也许会说。“但是为什么我们不使用CGI来代替它呢?”呵呵,我们要注意
这样一件事,就是如果使用这种方式进行客户端--服务端的交互时整个页面并没有被刷新。
我们都知道,如果要是通过CGI来做任何事情都必将导致浏览器接收一个完整的新页面,而
这尤其影响
来源:http://www.tulaoshi.com/n/20160219/1608014.html
看过《XMLHTTP: 网站超级粘合剂》的人还看了以下文章 更多>>