一、使用XMLHttpRequest的三个步骤:
1、创建一个XMLHttpRequest对象
2、指定HTTP请求并向一个Web服务器提交
3、同步或异步获取服务哭的响应
二、创建XMLHttpRequest
var request = new XMLHttpRequest();
XMLHttpRequest是一个Active对象,必须把对象名传递给ActiveXObject()构造函数
var request = new ActiveXObject("Msxml2.XMLHTTP"); // ie7之前
var request = new ActiveXObject("Microsoft.XMLHTTP"); // ie
三、提交一个请求
request.open("GET",url,false);
四、获取一个同步响应
request.open("GET",url,false); // 第三个参数为false为同步
send()方法是同步,它会阻塞而不会返回,直到服务器响应到达为止
send()并不返回状态代码,可以使用status属性来检查服务器返回的HTTP状态码。
五、处理一个异步响应
request.open("GET",url,true); // 第三个参数为true为异步
六、getText():
HTTP.getText = function(url,challback){
var request = HTTP.newRequest();
request.onreadystatechange = function(){
if(request.readyState == 4 && request.status == 200){
callback(request.responseText);
}
}
request.open("GET",url);
request.send(null);
}
六、XMLHttpRequest成员,对象
属性:
1、onreadystatechange: 指定当readyState属性改变时的事件处理句柄。只写
2、eadyState:返回当前请求的状态,只读.
3、responseBody:将回应信息正文以unsigned byte数组形式返回.只读
4、responseStream:以Ado Stream对象的形式返回响应信息。只读
5、responseText:将响应信息作为字符串返回.只读
6、responseXML:将响应信息格式化为Xml Document对象并返回,只读
7、status:返回当前请求的http状态码.只读
8、statusText:返回当前请求的响应行状态,只读
方法:
1、abort:取消当前请求
2、getAllResponseHeaders:获取响应的所有http头
3、getResponseHeader:从响应信息中获取指定的http头
4、open:创建一个新的http请求,并指定此请求的方法、URL以及验证信息(用户名/密码)
5、send:发送请求到http服务器并接收回应
6、setRequestHeader:单独指定请求的某个http头 ()