首页 > 代码库 > AJAX入门--- XMLHttpRequest对象的属性和方法

AJAX入门--- XMLHttpRequest对象的属性和方法

         由于刚刚接触到Ajax对其比较陌生,而其中的XMLHttpRequest对象更是未曾听闻。开始学之前,了解一下它的属性和方法为它的使用做下铺垫。本文重点介绍XMLHttpRequest的属性和方法。

         XMLHttpRequest对象的属性和事件

属性

描述

readyState

表示XMLHttpRequest对象的状态[1]

responseText

包含客户端接收到的HTTP相应的文本内容[2]

responseXML

服务器响应的XML内容对应的DOM对象[3]

status

服务器返回http状态码[4]

statusText

服务器返回状态码的文本信息[5]

事件

描述

onreadystatechange

readyState属性发生变化时触发此事件,用于触发回调函数。

 

[1]:

状态

名称

描述

0

Uninitialized

初始化状态。XMLHttpRequest 对象已创建或已被 abort() 方法重置。

1

Open

open() 方法已调用,但是 send() 方法未调用。请求还没有被发送。

2

Send

Send() 方法已调用,HTTP 请求已发送到 Web 服务器。未接收到响应。

3

Receiving

所有响应头部都已经接收到。响应体开始接收但未完成。

4

Loaded

HTTP 响应已经完全接收。

[2]:readyState=4时,responseText包含完整的响应信息。

readyState=3时,responseText包含未完整的响应信息。

readyState<3时,responseText为空字符串。

[3]:当readyState=4,并且响应头部的Content-Type的MIME类型为XML(text/xml或application/xml)时,该属性有值并且被解析成一个XML文档。其它情况为null,包括回传的XML文档不良或未完成响应回传。

[4]:如 200 表示成功,而 404 表示 "NotFound" 错误。当 readyState 小于 3 的时候读取这一属性会导致一个异常。

[5]:当状态为 200 的时候它是"OK",当状态为 404 的时候它是 "Not Found"。和 status 属性一样,当 readyState 小于 3 的时候读取这一属性会导致一个异常。

 

         XMLHttprequest对象的方法

         1.open方法

         描述:制定和服务器交互的HTTP方法,URL地址及其他请求信息。

         open(method,url, async, username, password) 用来进行初始化工作

         返回值:得到一个包含send()方法的对象

         method:必须。用于指定HTTP请求方法,支持所有HTTP的方法,如GET,POST,按规定

         uri:请求的服务器的地址,自动解析成绝对地址。

         async:请求是否异步,true表示你异步,false表示同步,默认为true。

         username,password:可以不指定,分别表示用户名和密码,提供HTTP认证机制需要的用户名和密码。

         调用open后,readystate状态为1. 

         2.send(content)方法

         描述:向服务器发出请求,其内容可以是DOM对象,输入流或是字符串。

         调用open 方法后,可以调用send()方法来发送请求。

         当open 中async=true时,send()方法调用后立即返回,否则会中断直到请求返回。

         3.abort()方法

         该方法可以暂停一个HttpRequest请求或者HttpResponse的接收,并且将XMLHttpRequest的状态设置为初始化。

         4.setRequestHeader(header,value)方法

         该方法用来设置请求的头部信息。此方法需要在open方法之后调用。

         5.getResponseHeader()方法

         描述:返回包含HTTP的所有响应头信息,其中响应头包括Content-Length,Date,URI等内容。

         当readystate>2时,该方法用来检索响应的头部信息。否则返回一个空字符串。

         getAllResponseHeaders()方法返回所有的HttpResponse头部信息。

 

         知道的XMLHttpRequest对象的相关知识之后,重点就是如何使用了,敬请关注我的下篇博客《AJAX入门---五步使用XMLHttpRequest对象》