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.
Please take two minutes to fill out our short survey.
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. Dies ermöglicht es einer Webseite, nur einen Teil der Seite zu aktualisieren, ohne das zu stören, was der Benutzer gerade tut.
Trotz seines Namens kann XMLHttpRequest
zum Abrufen beliebiger Datentypen verwendet werden, nicht nur XML.
Falls Ihre Kommunikation den Empfang von Ereignis- oder Nachrichtendaten von einem Server einbeziehen muss, sollten Sie die Verwendung von server-sent events über das EventSource
-Interface in Betracht ziehen. Für bidirektionale Kommunikation könnte WebSockets eine bessere Wahl sein.
Konstruktor
XMLHttpRequest()
-
Der Konstruktor initialisiert ein
XMLHttpRequest
. Er muss aufgerufen werden, bevor andere Methoden aufgerufen werden.
Instanz-Eigenschaften
Diese Schnittstelle erbt auch Eigenschaften von XMLHttpRequestEventTarget
und von EventTarget
.
XMLHttpRequest.readyState
Schreibgeschützt-
Gibt eine Zahl zurück, die den Zustand der Anforderung darstellt.
XMLHttpRequest.response
Schreibgeschützt-
Gibt entweder einen
ArrayBuffer
, einBlob
, einDocument
, ein JavaScript-Objekt oder einen String zurück, abhängig vom Wert vonXMLHttpRequest.responseType
, der den Antwortkörper 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 den vom HTTP-Server zurückgegebenen Antworttext enthält. Im Gegensatz zu
XMLHttpRequest.status
enthält dieser den gesamten Text der Antwortnachricht (zum Beispiel"OK"
).Hinweis: Gemäß 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 zu übertragen, die in einer HTTP/1.1-Statuszeile enthalten sind.
XMLHttpRequest.timeout
-
Die Zeit in Millisekunden, die eine Anfrage benötigen kann, bevor sie automatisch beendet wird.
XMLHttpRequest.upload
Schreibgeschützt-
Ein
XMLHttpRequestUpload
, das den Upload-Prozess darstellt. XMLHttpRequest.withCredentials
-
Gibt
true
zurück, wenn standortübergreifendeAccess-Control
-Anfragen mit Anmeldeinformationen wie Cookies oder Autorisierungs-Headern ausgeführt werden sollen; andernfallsfalse
.
Nicht-standardisierte Eigenschaften
XMLHttpRequest.mozAnon
Schreibgeschützt Nicht standardisiert-
Ein boolean.Wenn true, wird die Anfrage ohne Cookie- und Authentifizierungs-Header gesendet.
XMLHttpRequest.mozSystem
Schreibgeschützt Nicht standardisiert-
Ein boolean. Wenn true, wird die Same-Origin-Policy bei der Anfrage nicht durchgesetzt.
Instanz-Methoden
XMLHttpRequest.abort()
-
Bricht die Anfrage ab, wenn sie bereits gesendet wurde.
XMLHttpRequest.getAllResponseHeaders()
-
Gibt alle Antwort-Header als durch CRLF getrennten 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), kehrt diese Methode sofort zurück, sobald die Anfrage gesendet wurde.
XMLHttpRequest.setAttributionReporting()
Sicherer Kontext Experimentell-
Gibt an, dass Sie möchten, dass die Antwort der Anfrage eine Attributionsquelle oder ein Auslöserereignis registrieren kann.
XMLHttpRequest.setRequestHeader()
-
Setzt den Wert eines HTTP-Anfrage-Headers. 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. Ist auch über dieonabort
-Ereignishandler-Eigenschaft verfügbar. error
-
Wird ausgelöst, wenn die Anfrage auf einen Fehler gestoßen ist. Ist auch über die
onerror
-Ereignishandler-Eigenschaft verfügbar. load
-
Wird ausgelöst, wenn eine
XMLHttpRequest
-Transaktion erfolgreich abgeschlossen wurde. Ist auch über dieonload
-Ereignishandler-Eigenschaft verfügbar. loadend
-
Wird ausgelöst, wenn eine Anfrage abgeschlossen wurde, unabhängig davon, ob sie erfolgreich war (nach
load
) oder nicht erfolgreich war (nachabort
odererror
). Ist auch über dieonloadend
-Ereignishandler-Eigenschaft verfügbar. loadstart
-
Wird ausgelöst, wenn eine Anfrage begonnen hat, Daten zu laden. Ist auch über die
onloadstart
-Ereignishandler-Eigenschaft verfügbar. progress
-
Wird periodisch ausgelöst, wenn eine Anfrage mehr Daten empfängt. Ist auch über die
onprogress
-Ereignishandler-Eigenschaft verfügbar. readystatechange
-
Wird ausgelöst, wann immer sich die
readyState
-Eigenschaft ändert. Ist auch über dieonreadystatechange
-Ereignishandler-Eigenschaft verfügbar. timeout
-
Wird ausgelöst, wenn der Fortschritt aufgrund einer voreingestellten Zeitüberschreitung beendet wird. Ist auch über die
ontimeout
-Ereignishandler-Eigenschaft verfügbar.
Spezifikationen
Specification |
---|
XMLHttpRequest # interface-xmlhttprequest |
Browser-Kompatibilität
Siehe auch
XMLSerializer
: Serialisieren eines DOM-Baums in XML- Using XMLHttpRequest
- Fetch API