XMLHttpRequest
XMLHttpRequest 是一个API, 它为客户端提供了在客户端和服务器之间传输数据的功能。它提供了一个通过 URL 来获取数据的简单方式,并且不会使整个页面刷新。这使得网页只更新一部分页面而不会打扰到用户。XMLHttpRequest 在 AJAX 中被大量使用。
XMLHttpRequest 是一个 JavaScript 对象,它最初由微软设计,随后被 Mozilla、Apple 和 Google采纳. 如今,该对象已经被 W3C组织标准化. 通过它,你可以很容易的取回一个URL上的资源数据. 尽管名字里有XML, 但 XMLHttpRequest 可以取回所有类型的数据资源,并不局限于XML。 而且除了HTTP ,它还支持file 和 ftp 协议.
XMLHttpRequest()
继承层次
Object.prototype
Function.prototype
EventTarget
XMLHttpRequestEventTarget
XMLHttpRequest
构造函数
语法
new XMLHttpRequest();
属性列表
属性 | 说明 |
---|---|
- | - |
方法列表
语法 | 说明 |
---|---|
- | - |
XMLHttpRequest.prototype
继承层次
Object.prototype
EventTarget.prototype
XMLHttpRequestEventTarget.prototype
XMLHttpRequest.prototype
属性列表
从其父级继承的属性请查阅: XMLHttpRequestEventTarget.prototype。
属性 | 说明 |
---|---|
onreadystatechange | 一个JavaScript函数对象,当readyState属性改变时会调用它。回调函数会在user interface线程中调用。 |
readyState | 请求的状态 |
response | 响应实体的类型由 responseType 来指定, 可以是 ArrayBuffer, Blob, Document, JavaScript 对象 (即 “json”), 或者是字符串。如果请求未完成或失败,则该值为 null。 |
responseText | 此次请求的响应为文本,或是当请求未成功或还未发送时为 null。只读。 |
responseType | 设置该值能够改变响应类型。就是告诉服务器你期望的响应格式。 |
responseXML | 本次请求的响应是一个 Document 对象,如果是以下情况则值为 null:请求未成功,请求未发送,或响应无法被解析成 XML 或 HTML。当响应为text/xml 流时会被解析。当 responseType 设置为“document”,并且请求为异步的,则响应会被当做 text/html 流来解析。只读. |
status | 该请求的响应状态码 (例如, 状态码200 表示一个成功的请求).只读. |
statusText | 该请求的响应状态信息,包含一个状态码和原因短语 (例如 “200 OK”). 只读. |
upload | 可以在 upload 上添加一个事件监听来跟踪上传过程。 |
withCredentials | 表明在进行跨站(cross-site)的访问控制(Access-Control)请求时,是否使用认证信息(例如cookie或授权的header)。 默认为 false。 |
方法列表
从其父级继承的方法请查阅: XMLHttpRequestEventTarget.prototype.
语法 | 说明 |
---|---|
abort() | 如果请求已经被发送,则立刻中止请求. |
getAllResponseHeaders() | 返回所有响应头信息(响应头名和值), 如果响应头还没接受,则返回null |
getResponseHeader() | 返回指定的响应头的值, 如果响应头还没被接受,或该响应头不存在,则返回null. |
open() | 初始化一个请求. 该方法用于JavaScript代码中;如果是本地代码, 使用 openRequest()方法代替. |
overrideMimeType() | 重写由服务器返回的MIME type。这个可用于, 例如,强制把一个响应流当作“text/xml”来处理和解析,即使服务器没有指明数据是这个类型。注意,这个方法必须在send()之前被调用。 |
send() | 发送请求. 如果该请求是异步模式(默认),该方法会立刻返回. 相反,如果请求是同步模式,则直到请求的响应完全接受以后,该方法才会返回. |
setRequestHeader() | 给指定的HTTP请求头赋值.在这之前,你必须确认已经调用 open() 方法打开了一个url. |
XMLHttpRequest实例
Object.prototype
EventTarget.prototype
XMLHttpRequestEventTarget.prototype
XMLHttpRequest.prototype
XMLHttpRequest 实例