Aweto

.NET C# Ajax Atlas CSS Stream - The Web Technology
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

XMLHttpRequest

Posted on 2007-03-03 17:54  Aweto  阅读(372)  评论(0)    收藏  举报

XMLHttpRequest对象负责向服务器发送请求并处理服务器的响应。
目前版本的IE以ActiveX组件的形式实现了XMLHttpRequest对象;
其他浏览器中,XMLHttpRequest以原生的JavaScript对象的形式提供。
IE7页以原生的JavaScript对象形式支持XMLHttpRequest对象。

var xmlHttp;
function createXMLHttpRequest()
{
 if(window.ActiveXObject) --------->ActiveX对象
 {
  xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
 }
 else if(window.XMHttpRequest)------->原生的JavaScript对象
 {
  xmlHttp = new XMLHttpRequest();
 }
}

属性和方法
open方法:用来初始化对服务器的请求。
 两个必需的参数:HTTP请求的类型 -- get,post,put;将调用的服务器端资源的URL
 三个可选参数:是否要以异步的形式发送请求,布尔类型,默认为true;服务器需要安全验证时的用户名和密码,字符串类型。
 返回void
 xmlHttp.open("Get","theURL",true,"MyUserName","MyPassword");
send方法:将请求发送给服务器
 一个参数:随请求传递给服务器一些相关内容。可选。类型:DOM对象、输入流or字符串
 异步:立即返回;否则,send方法将被阻塞,直到收到服务器的响应。
 xmlHttp.send("Hello Server");
setRequestHeader方法:用来设定超文本传输协议(HTTP)的首部值。
 两个参数:一个代表首部名称的字符串;一个代表该首部值的字符串。
 xmlHttp.setRequestHeader("Referrer","AGreatBook");
getAllResponseHeaders方法:返回一个字符串,包含服务器响应中的所有首部信息。
 参数:一个代表首部名称的字符串参数,并返回一个字符串,代表这个首部的值。
 var strcl;
 strcl = xmlHttp.getResponseHeader("Content-lenght");
属性:
onreadystatechange:指定当XMLHttpRequest对象的状态变化是调用的函数名称。
readyState:当前请求的状态(0:未初始化;1:装载中;2:装载完毕;3:交互中;4:完成)
responseText:以字符串表示的服务器的当前响应
responseXML:以XML表示的服务器的当前响应
status:服务器的当前就HTTP状态码
statusText:以文字形式表示的服务器的当前HTTP状态


XMLHttpRequest对象提供了两个用来访问服务器响应的对象:responseText、responseXML