XMLHttpRequestsend() メソッドは、リクエストをサーバーに送信します。リクエストが非同期の場合 (これが既定)、このメソッドはリクエストが送信されるとすぐに戻り、結果はイベントを用いて配信されます。リクエストが同期の場合、このメソッドはレスポンスが到着するまで戻りません。

send() はリクエストの本文を示す引数を一つ受け取ることができます。これは主に PUT のようなリクエストに使用されます。リクエストメソッドが GET 又は HEAD であれば、 body 引数は無視され、リクエストの本文は null に設定されます。

setRequestHeader() を使用して Accept ヘッダーを設定しなかった場合、 Accept ヘッダーは "*/*" 型 (任意の型) が送信されます。

構文

XMLHttpRequest.send(body)

引数

body Optional
XHR のリクエストの中で送られる本文データです。次のものが使用できます。 body に値が設定されていない場合、既定値の null が使用されます。

バイナリコンテンツの送信 (例えばファイルのアップロード) の最適な方法は、 ArrayBufferView または Blobsend() メソッドを組み合わせることです。

返値

undefined

GET の例

var xhr = new XMLHttpRequest();
xhr.open('GET', '/server', true);

xhr.onload = function () {
  // リクエストの終了。ここの処理を実行します。
};

xhr.send(null);
// xhr.send('string');
// xhr.send(new Blob());
// xhr.send(new Int8Array());
// xhr.send(document);

POST の例

var xhr = new XMLHttpRequest();
xhr.open("POST", '/server', true);

//リクエストに従って正しいヘッダー情報を送信してください
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

xhr.onreadystatechange = function() {//状態が変化すると関数が呼び出されます。
    if(this.readyState == XMLHttpRequest.DONE && this.status == 200) {
        // リクエストの終了。ここの処理を実行します。
    }
}
xhr.send("foo=bar&lorem=ipsum"); 
// xhr.send(new Blob()); 
// xhr.send(new Int8Array()); 
// xhr.send(document);

仕様書

仕様書 状態 備考
XMLHttpRequest
send() の定義
現行の標準 WHATWG living standard

ブラウザーの対応

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeEdge MobileAndroid 版 FirefoxAndroid 版 OperaiOS 版 SafariSamsung Internet
基本対応Chrome 完全対応 1Edge 完全対応 12Firefox 完全対応 1IE 完全対応 7
完全対応 7
完全対応 5
補足
補足 Implemented via ActiveXObject
Opera 完全対応 ありSafari 完全対応 1.2WebView Android 完全対応 ありChrome Android 完全対応 18Edge Mobile 完全対応 ありFirefox Android 完全対応 4Opera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android 完全対応 あり
ArrayBuffer as parameter to send()Chrome 完全対応 9Edge 完全対応 ありFirefox 完全対応 9IE 完全対応 10Opera 完全対応 11.6Safari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 9Opera Android 完全対応 ありSafari iOS ? Samsung Internet Android 完全対応 あり
ArrayBufferView as parameter to send()Chrome 完全対応 22Edge ? Firefox 完全対応 20IE ? Opera 完全対応 ありSafari ? WebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 20Opera Android 完全対応 ありSafari iOS ? Samsung Internet Android 完全対応 あり
Blob as parameter to send()Chrome 完全対応 22Edge 完全対応 ありFirefox 完全対応 2IE 完全対応 10Opera 完全対応 12Safari ? WebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 4Opera Android 完全対応 ありSafari iOS ? Samsung Internet Android 完全対応 あり
FormData as parameter to send()Chrome 完全対応 6Edge 完全対応 ありFirefox 完全対応 2IE 完全対応 10Opera 完全対応 12Safari ? WebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 4Opera Android 完全対応 ありSafari iOS ? Samsung Internet Android 完全対応 あり
URLSearchParams as parameter to send()Chrome 完全対応 59Edge ? Firefox 完全対応 44IE ? Opera 完全対応 12Safari ? WebView Android 完全対応 ありChrome Android 完全対応 59Edge Mobile ? Firefox Android 完全対応 44Opera Android 完全対応 ありSafari iOS ? Samsung Internet Android 完全対応 7.0

凡例

完全対応  
完全対応
実装状況不明  
実装状況不明
実装ノートを参照してください。
実装ノートを参照してください。

関連情報

ドキュメントのタグと貢献者

このページの貢献者: mfuji09, laripappa
最終更新者: mfuji09,