このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

XMLHttpRequest: response プロパティ

Baseline
広く利用可能

この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2015年7月以降、すべてのブラウザーで利用可能です。

メモ: この機能はウェブワーカー内で利用可能ですが、サービスワーカーでは使用できません。

XMLHttpRequest の response プロパティは、そのリクエストの本体の内容を、 ArrayBuffer、Blob、Document、JavaScript の Object、文字列など、リクエストの responseType プロパティの値に応じた形で返します。

値

responseType の値に基づく適切なオブジェクト。 open() を呼び出してリクエストを初期化した後や、 send() を呼び出してリクエストをサーバーに送信する前に、 responseType の値を設定することで、特定の形式でデータを提供するようにリクエストができます。

リクエストが未完了または失敗する場合、値は null です。ただし、 "text" や空の文字列 ("") を使用してテキストデータを読み込む場合は除きます。リクエストがまだ LOADING readyState (3) にある間、レスポンスはこれまでのレスポンスを含むことがあります。

例

この例で紹介している load() 関数は、サーバーからページを読み込み処理するものです。これは、 XMLHttpRequest オブジェクトを作成し、 readystatechange イベントのリスナーを生成して、その中で readyState イベントが DONE (4) に変わると response が取得し、 load() に渡されたコールバック関数に渡しています。

コンテンツは生のテキストデータとして扱われます(ここでは、既定の responseType を上書きするものがないため)。

js
const url = "somePage.html"; // ローカルページ

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

ブラウザーの互換性

関連情報