AJAX基础XMLHttpReqiest

来源:互联网 发布:网络打假教程 编辑:程序博客网 时间:2024/06/15 14:53
XMLHttpRequest对象什么?
XMLHttpRequest是AJAX的核心部分,它用于在后台与服务器交换数据,这也就意味着不用加载整个页面的情况下对网页中的某一个部分进行更新。
XMLHttpRequest的属性与方法:
属性:
A、readyState属性
表示XMLHttpRequest对象的状态:
0:未初始化,对象已经创建,但是未调用open方法。
1:open方法成功调用,但是Send方法未调用。
2、send方法已经调用,尚未开始接受数据。
3、正在接收数据。Http响应头信息已经接受,但尚未接收完成。
4、完成,即响应数据接收完成。
B、Onreadystatechange属性
请求状态改变的事件触发器(readyState变化时会调用这个属性上注册的JavaScript函数)。
C、responseText属性
服务器响应的文本内容。
D、responseXML属性
服务器响应的XML内容对应的DOM对象
E、Status属性
服务器返回的http状态码。
200表示“成功”,404表示“未找到”,500表示“服务器内部错误”等。
F、statusText属性
服务器返回状态的文本信息。
方法:
A、Open(1,2,3,4,5)方法——注意:Open方法中的参数我暂时用数字代替,下面是解释部分。
Open方法是指定和服务器端交互的HTTP方法。
"1" — string method(字符串类型,表示http请求方法,一般使用"GET","POST",必需指定)。
"2" — string url(字符串类型,表示请求的服务器的地址,必需指定)。
"3" — boolean asynch(布尔型,表示是否采用异步方法,true为异步,false为同步,必需指定)。
"4" — string username(字符串类型,它表示用户名,可以不指定)。
"5" — string password(字符串类型,它表示密码,可以不指定)。
B、Send(content)方法
向服务器发出请求,如果采用异步方式,该方法会立即返回。
content可以指定为null表示不发送数据,其内容可以是DOM对象,输入流或字符串。
C、SetRequestHeader(string header,string value)方法
设置HTTP请求中的指定头部header的值为value.这个方法需要在open方法以后调用,一般在post方式中使用。
D、getAllReponseHeaders()方法
返回包含Http的所有响应头信息,其中响应头包括Content-length,date,url等内容。
返回值是一个字符串,包含所有头信息,其中每个键名和键值用冒号分开。
E、getResponseHeader(string header)方法
返回HTTP响应头中指定的键名header对应的值。
F、Abort()方法
停止当前http请求,对应的XMLHttpRequest对象会复位到未初始化的状态。
我们上面介绍了XMLHttpRequest的属性及方法那么究竟该如何创建一个XMLHttpRequest对象呢!?
创建XMLHttpRequest对象
我们在创建XMLHttpRequest对象的时候注意浏览器的兼容问题:
variable = new XMLHttpRequest();所有现代主流浏览器基本上都支持但是老版本的IE5、IE6并不支持。
variable = new ActiveXObject("Microsoft.XMLHTTP");主要用于兼容IE5、IE6
具体创建如下:
<script type="text/javascript">var xmlhttp;if (window.XMLHttpRequest) {// 支持现代所有主流浏览器包括IE7+xmlhttp = new XMLHttpRequest();}else{// 用于支持IE5、IE6xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");}</script>
如有理解不当之处,欢迎各位老铁留言指正。谢谢!!!!