XMLHttpRequest.response

XMLHttpRequest response プロパティは、そのリクエストのresponseTypeによって、ArrayBuffer (en-US), Blob, Document, JavaScript Object, or DOMStringといったレスポンスのボディを返します。

構文

var body = XMLHttpRequest.response;

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

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

レスポンスタイプは以下のとおりです。

{{page("/en-US/docs/Web/API/XMLHttpRequestResponseType", "Values")}}

下記に、サーバーからページをロードして処理する関数load()を例として提示します。仕組みとしては、XMLHttpRequestオブジェクトを作成し、readystatechange (en-US)イベントのリスナー(readyStateイベントがDONE (4)に変わるとresponseが取得され、それをload()のコールバック関数に渡すといった)を作成しています。

コンテンツは生のテキストデータとして処理されます(デフォルトのresponseTypeを上書きするものは何もないため)。

var url = 'somePage.html'; //A local page

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 現行の標準 WHATWG living standard

ブラウザの対応

BCD tables only load in the browser

関連