このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。
XMLHttpRequest
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
* Some parts of this feature may have varying levels of support.
XMLHttpRequest (XHR) オブジェクトは、サーバーと対話するために使用されます。ページ全体を更新する必要なしに、データを受け取ることができます。これでユーザーの作業を中断させることなく、ウェブページの一部を更新することができます。
XMLHttpRequest という名前ではあるものの、 XML だけでなく、あらゆる種類のデータを受け取るために使用することができます。
通信においてサーバーからのイベントデータやメッセージデータの受信を含む必要があるのであれば、サーバー送信イベントのEventSource インターフェイスを使用することも検討してください。全二重の通信では、WebSocket の方が良いかもしれません。
In this article
コンストラクター
XMLHttpRequest()XMLHttpRequest を初期化するコンストラクターです。これは、他のメソッドを呼び出す前に呼び出さなければなりません。
インスタンスプロパティ
このインターフェイスは、XMLHttpRequestEventTarget およびEventTarget のプロパティを継承しています。
XMLHttpRequest.readyState読取専用リクエストの状態を表す数値を返します。
XMLHttpRequest.response読取専用ArrayBuffer、Blob、Document、JavaScript オブジェクト、文字列の何れか(XMLHttpRequest.responseTypeの値による)で、リクエストのエンティティ本体を返します。XMLHttpRequest.responseText読取専用文字列で、リクエストに対するレスポンスをテキスト形式で返すか、リクエストが失敗した場合や、まだ送信されていない場合は
nullを返します。XMLHttpRequest.responseTypeレスポンスの種類を示します。
XMLHttpRequest.responseURL読取専用レスポンスのシリアライズされた URL、または URL が null であれば空文字列を返します。
XMLHttpRequest.responseXML読取専用Documentでリクエストに対するレスポンスが入ったを返すか、またはリクエストが成功しなかった場合、まだ送信されていない場合、 XML または HTML として解釈できなかった場合はnullを返します。ウェブワーカーでは利用できません。XMLHttpRequest.status読取専用リクエストのHTTP レスポンスステータスコードを返します。
XMLHttpRequest.statusText読取専用文字列で、HTTP サーバーから返ってきたレスポンス文字列を返します。
XMLHttpRequest.statusとは異なり、("OK"のような)レスポンスメッセージの完全な文が含まれています。メモ:HTTP/2 仕様書RFC 7540, セクション 8.1.2.4: Response Pseudo-Header Fields によれば、 HTTP/2 では、 HTTP/1.1 のステータス行に含まれていたバージョンや原因の文を伝える方法が定義されていません。
XMLHttpRequest.timeoutリクエストを自動的に終了するまでの時間をミリ秒単位で表します。
XMLHttpRequest.upload読取専用XMLHttpRequestUploadで、アップロードプロセスを表します。XMLHttpRequest.withCredentialsサイト間の
Access-Controlリクエストでクッキーや認証ヘッダーなどの資格情報を使用する場合はtrueを返します。そうでなければfalseを返します。
標準外のプロパティ
XMLHttpRequest.mozAnon読取専用非標準論理値です。 true の場合、リクエストを Cookie や認証ヘッダーを伴わずに送信します。
XMLHttpRequest.mozSystem読取専用非標準論理値です。 true の場合、リクエストで同一オリジンポリシーは適用されません。
インスタンスメソッド
XMLHttpRequest.abort()リクエストがすでに送信されている場合、リクエストを中止します。
XMLHttpRequest.getAllResponseHeaders()すべてのレスポンスヘッダーを、CRLF で区切り、文字列として返します。レスポンスを何も受け取らなかった場合は
nullを返します。XMLHttpRequest.getResponseHeader()指定したヘッダーを含む文字列を返します。レスポンスを受信していない、またはレスポンス内に指定したヘッダーが存在しない場合は
nullを返します。XMLHttpRequest.open()リクエストを初期化します。
XMLHttpRequest.overrideMimeType()サーバーから返ってくる MIME タイプを上書きします。
XMLHttpRequest.send()リクエストを送信します。このリクエストが非同期(既定)の場合、このメソッドはリクエストが送るとすぐに返ります。
XMLHttpRequest.setAttributionReporting()安全なコンテキスト用Experimentalリクエストのレスポンスで、帰属ソースや発生するイベントを登録できるようにすることを示します。
XMLHttpRequest.setRequestHeader()HTTP リクエストヘッダーの値を設定します。
setRequestHeader()はopen()の後、およびsend()の前に呼び出さなくてはいけません。
イベント
このインターフェイスには、XMLHttpRequestEventTarget から継承したイベントもあります。
readystatechangereadyStateプロパティが変化するたびに発生します。onreadystatechangeイベントハンドラープロパティを通して利用することもできます。
仕様書
| Specification |
|---|
| XMLHttpRequest> # interface-xmlhttprequest> |
ブラウザーの互換性
関連情報
XMLSerializer: DOM ツリーの XML へのシリアライズ- XMLHttpRequest の使い方
- フェッチ API