XMLHttpRequest: response 屬性

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

注意:此功能在 Web Workers 中可用,但 Service Workers 除外。

XMLHttpRequestresponse 屬性會根據請求的 responseType 屬性的值,以 ArrayBufferBlobDocument、JavaScript Object 或字串的形式返回響應體內容。

一個基於 responseType 值確定的適當物件。您可以透過在呼叫 open() 初始化請求後、呼叫 send() 將請求傳送到伺服器之前,設定 responseType 的值來嘗試請求特定格式的資料。

如果請求尚未完成或不成功,則該值為 null。但有一個例外:當使用 "text" 或空字串 ("") 的 responseType 讀取文字資料時,在請求仍處於 LOADING (3) 的 readyState 狀態時,響應可以包含到目前為止的響應內容。

示例

本示例介紹了一個名為 load() 的函式,用於從伺服器載入和處理頁面。它的工作方式是建立一個 XMLHttpRequest 物件,並建立一個 readystatechange 事件的監聽器,當 readyState 變為 DONE (4) 時,獲取 response 並將其傳遞給提供給 load() 的回撥函式。

內容被處理為原始文字資料(因為此處沒有任何內容覆蓋預設的 responseType)。

js
const url = "somePage.html"; // A local page

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

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

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

規範

規範
XMLHttpRequest
# the-response-attribute

瀏覽器相容性

另見