XMLHttpRequest
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
* Some parts of this feature may have varying levels of support.
Hinweis: Diese Funktion ist in Web Workers verfügbar, mit Ausnahme von Service Workers.
XMLHttpRequest
(XHR)-Objekte werden verwendet, um mit Servern zu interagieren. Sie können Daten von einer URL abrufen, ohne die gesamte Seite neu laden zu müssen. Dadurch kann eine Webseite nur einen Teil der Seite aktualisieren, ohne das, was der Benutzer gerade tut, zu unterbrechen.
Trotz seines Namens kann XMLHttpRequest
verwendet werden, um jeden Datentyp abzurufen, nicht nur XML.
Wenn Ihre Kommunikation das Empfangen von Ereignis- oder Meldungsdaten von einem Server beinhalten muss, sollten Sie die Verwendung von server-sent events über das EventSource
-Interface in Betracht ziehen. Für vollduplexe Kommunikation kann WebSockets eine bessere Wahl sein.
Konstruktor
XMLHttpRequest()
-
Der Konstruktor initialisiert ein
XMLHttpRequest
. Er muss vor allen anderen Methodenaufrufen aufgerufen werden.
Instanzeigenschaften
Dieses Interface erbt auch Eigenschaften von XMLHttpRequestEventTarget
und von EventTarget
.
XMLHttpRequest.readyState
Schreibgeschützt-
Gibt eine Zahl zurück, die den Status der Anfrage repräsentiert.
XMLHttpRequest.response
Schreibgeschützt-
Gibt ein
ArrayBuffer
, einBlob
, einDocument
, ein JavaScript-Objekt oder einen String zurück, abhängig vom Wert vonXMLHttpRequest.responseType
, das den Antwortinhalt enthält. XMLHttpRequest.responseText
Schreibgeschützt-
Gibt einen String zurück, der die Antwort auf die Anfrage als Text enthält, oder
null
, wenn die Anfrage nicht erfolgreich war oder noch nicht gesendet wurde. XMLHttpRequest.responseType
-
Gibt den Typ der Antwort an.
XMLHttpRequest.responseURL
Schreibgeschützt-
Gibt die serialisierte URL der Antwort oder den leeren String zurück, wenn die URL null ist.
XMLHttpRequest.responseXML
Schreibgeschützt-
Gibt ein
Document
zurück, das die Antwort auf die Anfrage enthält, odernull
, wenn die Anfrage nicht erfolgreich war, noch nicht gesendet wurde oder nicht als XML oder HTML geparst werden kann. Nicht verfügbar in Web Workers. XMLHttpRequest.status
Schreibgeschützt-
Gibt den HTTP-Antwortstatuscode der Anfrage zurück.
XMLHttpRequest.statusText
Schreibgeschützt-
Gibt einen String zurück, der die vom HTTP-Server zurückgegebene Antwortzeichenkette enthält. Im Gegensatz zu
XMLHttpRequest.status
enthält dies den gesamten Text der Antwortnachricht (z. B."OK"
).Hinweis: Laut der HTTP/2-Spezifikation RFC 7540, Abschnitt 8.1.2.4: Response Pseudo-Header Fields, definiert HTTP/2 keine Möglichkeit, die Version oder den Grundsatz, der in einer HTTP/1.1-Statuszeile enthalten ist, zu übertragen.
XMLHttpRequest.timeout
-
Die Zeit in Millisekunden, die eine Anfrage in Anspruch nehmen kann, bevor sie automatisch beendet wird.
XMLHttpRequest.upload
Schreibgeschützt-
Ein
XMLHttpRequestUpload
, das den Hochladeprozess repräsentiert. XMLHttpRequest.withCredentials
-
Gibt
true
zurück, wenn domänenübergreifendeAccess-Control
-Anfragen unter Verwendung von Anmeldeinformationen wie Cookies oder Authentifizierungsheadern durchgeführt werden sollen; ansonstenfalse
.
Nicht standardisierte Eigenschaften
XMLHttpRequest.channel
Schreibgeschützt-
Der Kanal, der vom Objekt beim Ausführen der Anfrage verwendet wird.
XMLHttpRequest.mozAnon
Schreibgeschützt-
Ein Boolean. Wenn
true
, wird die Anfrage ohne Cookie- und Authentifizierungsheader gesendet. XMLHttpRequest.mozSystem
Schreibgeschützt-
Ein Boolean. Wenn
true
, wird die Same-Origin-Richtlinie bei der Anfrage nicht durchgesetzt. XMLHttpRequest.mozBackgroundRequest
-
Ein Boolean. Er gibt an, ob das Objekt eine Hintergrunddienstanfrage darstellt oder nicht.
Instanzmethoden
XMLHttpRequest.abort()
-
Bricht die Anfrage ab, wenn sie bereits gesendet wurde.
XMLHttpRequest.getAllResponseHeaders()
-
Gibt alle Antwortheader, getrennt durch CRLF, als String zurück, oder
null
, wenn keine Antwort empfangen wurde. XMLHttpRequest.getResponseHeader()
-
Gibt den String zurück, der den Text des angegebenen Headers enthält, oder
null
, wenn entweder die Antwort noch nicht empfangen wurde oder der Header in der Antwort nicht existiert. XMLHttpRequest.open()
-
Initialisiert eine Anfrage.
XMLHttpRequest.overrideMimeType()
-
Überschreibt den vom Server zurückgegebenen MIME-Typ.
XMLHttpRequest.send()
-
Sendet die Anfrage. Wenn die Anfrage asynchron ist (was der Standard ist), gibt diese Methode zurück, sobald die Anfrage gesendet wurde.
XMLHttpRequest.setAttributionReporting()
Sicherer Kontext Experimentell-
Gibt an, dass Sie möchten, dass die Antwort der Anfrage in der Lage ist, eine Attributionsquelle oder ein Ereignis zu registrieren.
XMLHttpRequest.setRequestHeader()
-
Setzt den Wert eines HTTP-Anfrageheaders. Sie müssen
setRequestHeader()
nachopen()
, aber vorsend()
aufrufen.
Ereignisse
abort
-
Wird ausgelöst, wenn eine Anfrage abgebrochen wurde, beispielsweise weil das Programm
XMLHttpRequest.abort()
aufgerufen hat. Auch verfügbar über dieonabort
-Ereignishandler-Eigenschaft. error
-
Wird ausgelöst, wenn bei der Anfrage ein Fehler aufgetreten ist. Auch verfügbar über die
onerror
-Ereignishandler-Eigenschaft. load
-
Wird ausgelöst, wenn eine
XMLHttpRequest
-Transaktion erfolgreich abgeschlossen wird. Auch verfügbar über dieonload
-Ereignishandler-Eigenschaft. loadend
-
Wird ausgelöst, wenn eine Anfrage abgeschlossen ist, unabhängig davon, ob sie erfolgreich war (nach
load
) oder nicht erfolgreich war (nachabort
odererror
). Auch verfügbar über dieonloadend
-Ereignishandler-Eigenschaft. loadstart
-
Wird ausgelöst, wenn eine Anfrage begonnen hat, Daten zu laden. Auch verfügbar über die
onloadstart
-Ereignishandler-Eigenschaft. progress
-
Wird regelmäßig ausgelöst, wenn eine Anfrage mehr Daten empfängt. Auch verfügbar über die
onprogress
-Ereignishandler-Eigenschaft. readystatechange
-
Wird ausgelöst, wenn sich die
readyState
-Eigenschaft ändert. Auch verfügbar über dieonreadystatechange
-Ereignishandler-Eigenschaft. timeout
-
Wird ausgelöst, wenn der Fortschritt aufgrund abgelaufener voreingestellter Zeit beendet wird. Auch verfügbar über die
ontimeout
-Ereignishandler-Eigenschaft.
Spezifikationen
Specification |
---|
XMLHttpRequest # interface-xmlhttprequest |
Browser-Kompatibilität
Siehe auch
XMLSerializer
: Serialisieren eines DOM-Baums in XML- Verwendung von XMLHttpRequest
- Fetch API