XMLHttpRequest.response

XMLHttpRequest response 属性返回响应的正文。返回的类型为 ArrayBufferBlobDocument 、 JavaScript ObjectDOMString 中的一个。 这取决于 responseType 属性。

语法

var body = XMLHttpRequest.response;

取值

一个对象,其类型取决于 responseType 的值。你可以尝试设置 responseType 的值,以便通过特定的类型请求数据。 responseType 要在调用 open() 初始化请求之后调用,并且要在调用 send() 发送请求到服务器之前调用。

如果请求尚未完成或未成功,则取值是 null 。例外的,读取文本数据时如果将 responseType 的值设置成"text"或空字符串("")且当请求状态还在是 LOADING readyState (3) 时,response 包含到目前为止该请求已经取得的内容。

响应的类型如下所示。

{{page("/zh-CN/docs/Web/API/XMLHttpRequestResponseType", "取值")}}

例子

此例子提供了一个方法—— load() ,它可以从服务器加载和处理页面。它通过创建一个 XMLHttpRequest 对象并为 readystatechange (en-US) 事件创建一个监听器。这样的话,当 readyState 变成 DONE (4) 时就会获取 response 并将其传递给 load() 中提供的回调函数。

返回的内容会被作为原始文本数据处理 (因为这里没有覆盖  responseType 的默认值)。

var url = 'somePage.html'; //一个本地页面

function load(url, callback) {
  var xhr = new XMLHttpRequest();

  xhr.onreadystatechange = function() {
    if (xhr.readyState === 4) {
      callback(xhr.response);
    }
  }

  xhr.open('GET', url, true);
  xhr.send('');
}

规范

规范 状态 注释
XMLHttpRequest Living Standard WHATWG living standard

浏览器兼容性

BCD tables only load in the browser

了解更多