AJAX - XMLHttpRequest

Das XMLHttpRequest-Objekt ist der Schlüssel zu AJAX. Es ist seit der Veröffentlichung von Internet Explorer 5.5 im Juli 2000 verfügbar, wurde jedoch erst vollständig entdeckt, als AJAX und Web 2.0 im Jahr 2005 populär wurden.

XMLHttpRequest (XHR) ist eine API, die von JavaScript, JScript, VBScript und anderen Webbrowserskriptsprachen verwendet werden kann, um XML-Daten mithilfe von HTTP zu und von einem Webserver zu übertragen und zu bearbeiten und einen unabhängigen Verbindungskanal zwischen der Client-Seite und einer Webseite herzustellen Serverseitig.

Die von XMLHttpRequest-Aufrufen zurückgegebenen Daten werden häufig von Back-End-Datenbanken bereitgestellt. Neben XML kann XMLHttpRequest zum Abrufen von Daten in anderen Formaten verwendet werden, z. B. JSON oder sogar Klartext.

Sie haben bereits einige Beispiele zum Erstellen eines XMLHttpRequest-Objekts gesehen.

Nachfolgend sind einige der Methoden und Eigenschaften aufgeführt, mit denen Sie sich vertraut machen müssen.

XMLHttpRequest-Methoden

  • abort()

    Bricht die aktuelle Anforderung ab.

  • getAllResponseHeaders()

    Gibt den vollständigen Satz von HTTP-Headern als Zeichenfolge zurück.

  • getResponseHeader( headerName )

    Gibt den Wert des angegebenen HTTP-Headers zurück.

  • open( method, URL )

  • open( method, URL, async )

  • open( method, URL, async, userName )

  • open( method, URL, async, userName, password )

    Gibt die Methode, die URL und andere optionale Attribute einer Anforderung an.

    Der Methodenparameter kann den Wert "GET", "POST" oder "HEAD" haben. Andere HTTP-Methoden wie "PUT" und "DELETE" (hauptsächlich in REST-Anwendungen verwendet) sind möglicherweise möglich.

    Der Parameter "async" gibt an, ob die Anforderung asynchron behandelt werden soll oder nicht. "true" bedeutet, dass die Skriptverarbeitung nach der send () -Methode fortgesetzt wird, ohne auf eine Antwort zu warten, und "false" bedeutet, dass das Skript auf eine Antwort wartet, bevor die Skriptverarbeitung fortgesetzt wird.

  • send( content )

    Sendet die Anfrage.

  • setRequestHeader( label, value )

    Fügt dem zu sendenden HTTP-Header ein Label / Wert-Paar hinzu.

XMLHttpRequest-Eigenschaften

  • onreadystatechange

    Ein Ereignishandler für ein Ereignis, das bei jeder Statusänderung ausgelöst wird.

  • readyState

    Die Eigenschaft readyState definiert den aktuellen Status des XMLHttpRequest-Objekts.

    Die folgende Tabelle enthält eine Liste der möglichen Werte für die Eigenschaft readyState.

Zustand Beschreibung
0 Die Anforderung wird nicht initialisiert.
1 Die Anfrage wurde eingerichtet.
2 Die Anfrage wurde gesendet.
3 Die Anfrage ist in Bearbeitung.
4 Die Anfrage ist abgeschlossen.

readyState = 0 Nachdem Sie das XMLHttpRequest-Objekt erstellt haben, aber zuvor die open () -Methode aufgerufen haben.

readyState = 1 Nachdem Sie die open () -Methode aufgerufen haben, aber bevor Sie send () aufgerufen haben.

readyState = 2 Nachdem Sie send () aufgerufen haben.

readyState = 3 Nachdem der Browser eine Kommunikation mit dem Server hergestellt hat, aber bevor der Server die Antwort abgeschlossen hat.

readyState = 4 Nachdem die Anforderung abgeschlossen wurde und die Antwortdaten vollständig vom Server empfangen wurden.

  • responseText

    Gibt die Antwort als Zeichenfolge zurück.

  • responseXML

    Gibt die Antwort als XML zurück. Diese Eigenschaft gibt ein XML-Dokumentobjekt zurück, das mithilfe der W3C-DOM-Knotenbaummethoden und -eigenschaften untersucht und analysiert werden kann.

  • status

    Gibt den Status als Nummer zurück (z. B. 404 für "Nicht gefunden" und 200 für "OK").

  • statusText

    Gibt den Status als Zeichenfolge zurück (z. B. "Nicht gefunden" oder "OK").