Blue Flower

 

Die Eigenschaften eines XMLHttpRequest-Objekt

Ein XHR-Objekt besitzt neben den beschriebenen Methoden eine Reihe Eigenschaften, die Sie für eine AJAX-Applikation benötigen oder diese optional um einige Möglichkeiten erweitert:

Eigenschaft

Kurzbeschreibung

onreadystatechange

Die Eigenschaft beschreibt einen JavaScript-Eventhandler der jedes Mal aufgerufen wird, wenn sich der Verbindungsstatus (readyState) eines XHR-Objekts ändert.

Man registriert bei diesem Eventhandler in der Regel eine Funktionsreferenz auf eine Callback-Funktion oder notiert hier eine anonyme Funktion.

readyState

Die Eigenschaft enthält den aktuellen Verbindungsstatus einer Transaktion. Mögliche Werte, die an den Standardmeldungen eines Webservers orientiert sind, sind folgende:

0

UNINITIALIZED

Das XHR-Objekt wurde noch nicht initialisiert. Das bedeutet, die Verbindung wurde noch nicht geöffnet beziehungsweise die Methode open() noch nicht aufgerufen.

1

LOADING

Das Request-Objekt wurde erstellt und initialisiert, aber es wurde noch keine Anfrage mit send() gesendet.

2

LOADED

Die Anfrage wurde gesendet und der Antwort-Header sowie der Antwortstatus können ausgewertet werden.

3

INTERACTIVE

Die Daten vom Server treffen gerade ein. Die Eigenschaften responseText bzw. responseXML enthalten die bereits empfangenen Daten.

4

COMPLETED

Die Kommunikation mit dem Server ist abgeschlossen und alle Daten sind angekommen, wenn kein Fehler aufgetreten ist. Dies ist der wichtigste Fall bei der Erstellung von AJAX-Applikationen.

Sie können beispielsweise in einer switch-case- oder einer if-Entscheidung die Statuscodes auswerten und entsprechend Reaktionen implementieren. Aber Achtung: Die Statuscodes außer 4 (COMPLETED) sind in verschiedenen Browsern nicht wirklich einheitlich implementiert. Deshalb macht in der Praxis fast nur die Abfrage auf readyState == 4 Sinn.

responseText

Die Eigenschaft enthält die vom Server gesendeten Daten als Text.

responseXML

Die Eigenschaft enthält die vom Server gesendeten Daten als XML-Daten beziehungsweise DOM (d.h. ein Knotenobjekt vom Typ node). Wenn die Daten nicht in XML-Form (oder allgemein als Baum) gesendet worden sind, enthält responseXML den Wert null.

status

Die Eigenschaft enthält den HTTP-Status der Verbindung als Zahl und korrespondiert unmittelbar mit dem zugehörigen Wert der Serverantwort. Sie können darüber genauer die Antwort des Webservers verwerten als es mit readyState möglich ist. Im Allgemeinen ist diese genauere Verwertung allerdings nicht notwendig.

statusText

Die Eigenschaft enthält den HTTP-Status als Text-Meldung, sofern eine solche übermittelt wurde und korrespondiert unmittelbar mit dem zugehörigen Wert der Serverantwort.