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 zu laden. Dies ermöglicht es einer Webseite, nur einen Teil der Seite zu aktualisieren, ohne die Aktionen des Benutzers zu unterbrechen.
Trotz seines Namens kann XMLHttpRequest
verwendet werden, um jegliche Art von Daten abzurufen, nicht nur XML.
Wenn Ihre Kommunikation das Empfangen von Ereignisdaten oder Nachrichtendaten von einem Server umfassen muss, ziehen Sie die Verwendung von server-sent events über die EventSource
-Schnittstelle in Betracht. Für Vollduplex-Kommunikation könnte WebSockets eine bessere Wahl sein.
Konstruktor
XMLHttpRequest()
-
Der Konstruktor initialisiert ein
XMLHttpRequest
. Er muss aufgerufen werden, bevor andere Methoden aufgerufen werden.
Instanzeigenschaften
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 ein
ArrayBuffer
, einBlob
, einDocument
, ein JavaScript-Objekt oder einen String zurück, abhängig vom Wert vonXMLHttpRequest.responseType
, der den Antwort-Entity-Body 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 von dem HTTP-Server zurückgegebenen Antwort-String enthält. Im Gegensatz zu
XMLHttpRequest.status
enthält dies 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, der in einer HTTP/1.1-Statuszeile enthalten ist.
XMLHttpRequest.timeout
-
Die Zeit in Millisekunden, die eine Anfrage dauern kann, bevor sie automatisch beendet wird.
XMLHttpRequest.upload
Schreibgeschützt-
Ein
XMLHttpRequestUpload
, das den Upload-Prozess darstellt. XMLHttpRequest.withCredentials
-
Gibt
true
zurück, wennAccess-Control
-Anfragen mit Anmeldeinformationen wie Cookies oder Authorisierungs-Headern gemacht werden sollen; andernfallsfalse
.
Nicht-standardisierte Eigenschaften
XMLHttpRequest.mozAnon
Schreibgeschützt Nicht standardisiert-
Ein Boolean. Wenn wahr, wird die Anfrage ohne Cookie- und Authentifizierungs-Header gesendet.
XMLHttpRequest.mozSystem
Schreibgeschützt Nicht standardisiert-
Ein Boolean. Wenn wahr, wird die Same-Origin-Policy bei der Anfrage nicht durchgesetzt.
Instanzmethoden
XMLHttpRequest.abort()
-
Bricht die Anfrage ab, wenn sie bereits gesendet wurde.
XMLHttpRequest.getAllResponseHeaders()
-
Gibt alle Antwort-Header zurück, getrennt durch CRLF, als String, 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 eine Attributionsquelle oder ein Auslöseevent registrieren kann.
XMLHttpRequest.setRequestHeader()
-
Setzt den Wert eines HTTP-Anfrage-Headers. Sie müssen
setRequestHeader()
nachopen()
aufrufen, jedoch vorsend()
.
Ereignisse
abort
-
Wird ausgelöst, wenn eine Anfrage abgebrochen wurde, zum Beispiel, weil das Programm
XMLHttpRequest.abort()
aufgerufen hat. Auch über dieonabort
-Ereignishandlereigenschaft verfügbar. error
-
Wird ausgelöst, wenn die Anfrage auf einen Fehler gestoßen ist. Auch über die
onerror
-Ereignishandlereigenschaft verfügbar. load
-
Wird ausgelöst, wenn eine
XMLHttpRequest
-Transaktion erfolgreich abgeschlossen wurde. Auch über dieonload
-Ereignishandlereigenschaft verfügbar. loadend
-
Wird ausgelöst, wenn eine Anfrage abgeschlossen wurde, ob erfolgreich (nach
load
) oder nicht erfolgreich (nachabort
odererror
). Auch über dieonloadend
-Ereignishandlereigenschaft verfügbar. loadstart
-
Wird ausgelöst, wenn eine Anfrage begonnen hat, Daten zu laden. Auch über die
onloadstart
-Ereignishandlereigenschaft verfügbar. progress
-
Wird periodisch ausgelöst, wenn eine Anfrage mehr Daten empfängt. Auch über die
onprogress
-Ereignishandlereigenschaft verfügbar. readystatechange
-
Wird jedes Mal ausgelöst, wenn sich die
readyState
-Eigenschaft ändert. Auch über dieonreadystatechange
-Ereignishandlereigenschaft verfügbar. timeout
-
Wird ausgelöst, wenn der Fortschritt aufgrund einer abgelaufenen voreingestellten Zeit beendet wird. Auch über die
ontimeout
-Ereignishandlereigenschaft verfügbar.
Spezifikationen
Specification |
---|
XMLHttpRequest # interface-xmlhttprequest |
Browser-Kompatibilität
Siehe auch
XMLSerializer
: Serialisierung eines DOM-Baums in XML- Verwendung von XMLHttpRequest
- Fetch API