当前位置: 首页 > 文档资料 > AJAX 中文教程 >

XMLHttpRequest(XMLHttpRequest)

优质
小牛编辑
127浏览
2023-12-01

XMLHttpRequest对象是AJAX的关键。 自Internet Explorer 5.5于2000年7月发布以来,它一直可用,但直到2005年的AJAX和Web 2.0开始流行才被完全发现。

XMLHttpRequest(XHR)是一种API,可以被JavaScript,JScript,VBScript和其他Web浏览器脚本语言用于使用HTTP在Web服务器之间传输和操作XML数据,在网页的客户端和网络端之间建立独立的连接通道。服务器端。

从XMLHttpRequest调用返回的数据通常由后端数据库提供。 除了XML之外,XMLHttpRequest还可用于获取其他格式的数据,例如JSON甚至纯文本。

您已经看过几个关于如何创建XMLHttpRequest对象的示例。

下面列出了一些您必须熟悉的方法和属性。

XMLHttpRequest方法

  • abort()

    取消当前请求。

  • getAllResponseHeaders()

    以字符串形式返回完整的HTTP标头集。

  • getResponseHeader( headerName )

    返回指定HTTP标头的值。

  • open( method, URL )

  • open( method, URL, async )

  • open( method, URL, async, userName )

  • open( method, URL, async, userName, password )

    指定请求的方法,URL和其他可选属性。

    方法参数可以具有值“GET”,“POST”或“HEAD”。 其他HTTP方法(如“PUT”和“DELETE”(主要用于REST应用程序))也是可能的。

    “async”参数指定是否应异步处理请求。 “true”表示脚本处理在send()方法之后继续而不等待响应,“false”表示脚本在继续脚本处理之前等待响应。

  • send( content )

    发送请求。

  • setRequestHeader( label, value )

    将标签/值对添加到要发送的HTTP标头。

XMLHttpRequest属性

  • onreadystatechange

    每个状态更改时触发的事件的事件处理程序。

  • readyState

    readyState属性定义XMLHttpRequest对象的当前状态。

    下表提供了readyState属性的可能值列表 -

描述
0请求未初始化。
1请求已设置。
2请求已发送。
3请求正在进行中。
4请求已完成。

readyState = 0创建XMLHttpRequest对象之后,但在调用open()方法之前。

readyState = 1调用open()方法之后,但在调用send()之前。

readyState = 2调用send()之后。

readyState = 3浏览器与服务器建立通信后,但在服务器完成响应之前。

readyState = 4请求完成后,响应数据已完全从服务器接收。

  • responseText

    以字符串形式返回响应。

  • responseXML

    以XML格式返回响应。 此属性返回XML文档对象,可以使用W3C DOM节点树方法和属性检查和解析该对象。

  • status

    将状态返回为数字(例如,“Not Found”为404,“OK”为200)。

  • statusText

    以字符串形式返回状态(例如,“Not Found”或“OK”)。