Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
XMLHttpRequest: send()-Methode
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since Juli 2015.
Hinweis: Diese Funktion ist in Web Workers verfügbar, mit Ausnahme von Service Workers.
Die XMLHttpRequest-Methode send() sendet die Anfrage an den Server.
Wenn die Anfrage asynchron ist (was der Standard ist), kehrt diese Methode zurück, sobald die Anfrage gesendet wurde und das Ergebnis wird über Ereignisse geliefert. Ist die Anfrage synchron, kehrt diese Methode nicht zurück, bis die Antwort eingetroffen ist.
send() akzeptiert einen optionalen Parameter, mit dem Sie den Inhalt der Anfrage angeben können; dies wird hauptsächlich für Anfragen wie PUT verwendet. Wenn die Anfragemethode GET oder HEAD ist, wird der body-Parameter ignoriert und der Anfragetext auf null gesetzt.
Wenn kein Accept-Header mithilfe von setRequestHeader() gesetzt wurde, wird ein Accept-Header mit dem Typ "*/*" (jeder Typ) gesendet.
Syntax
send()
send(body)
Parameter
bodyOptional-
Ein Datenkörper, der in der XHR-Anfrage gesendet werden soll. Dies kann sein:
- Ein
Document, das vor dem Senden serialisiert wird. - Ein
XMLHttpRequestBodyInit, das laut Fetch-Spezifikation einBlob, einArrayBuffer, einTypedArray, einDataView, einFormData, einURLSearchParamsoder ein String sein kann. null
Wenn kein Wert für den Body angegeben wird, wird standardmäßig
nullverwendet. - Ein
Der beste Weg, um binäre Inhalte (z.B. bei Datei-Uploads) zu senden, ist die Verwendung eines TypedArray, eines DataView oder eines Blob-Objekts in Verbindung mit der send()-Methode.
Rückgabewert
Keiner (undefined).
Ausnahmen
InvalidStateErrorDOMException-
Wird ausgelöst, wenn
send()bereits für die Anfrage aufgerufen wurde und/oder die Anfrage abgeschlossen ist. NetworkErrorDOMException-
Wird ausgelöst, wenn der abzurufende Ressourcentyp ein Blob ist und die Methode nicht
GETist.
Beispiel: GET
const xhr = new XMLHttpRequest();
xhr.open("GET", "/server", true);
xhr.onload = () => {
// Request finished. Do processing here.
};
xhr.send(null);
// xhr.send('string');
// xhr.send(new Blob());
// xhr.send(new Int8Array());
// xhr.send(document);
Beispiel: POST
const xhr = new XMLHttpRequest();
xhr.open("POST", "/server", true);
// Send the proper header information along with the request
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.onreadystatechange = () => {
// Call a function when the state changes.
if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
// Request finished. Do processing here.
}
};
xhr.send("foo=bar&lorem=ipsum");
// xhr.send(new Int8Array());
// xhr.send(document);
Spezifikationen
| Specification |
|---|
| XMLHttpRequest> # the-send()-method> |
Browser-Kompatibilität
Loading...