Ajax optimal einsetzen

Jetzt, wo ein XMLHttpRequest angelegt werden kann, muss noch bestimmt werden, wann es erzeugt wird. Obwohl noch keine Abfrage getätigt wurde, ist doch absehbar, dass man das XMLHttpRequest-Objekt vor dem Versenden von Abfragen instanziieren oder das Objekt bei Bedarf innerhalb einer Methode anlegen kann.

Ein Problem beim Anlegen des Objekts bei Bedarf besteht darin, dass es keine Informationen darüber gibt, ob der Client ein XMLHttpRequest-Objekt anlegen kann oder nicht. Wenn ein Nutzer auf die programmierte Seite zugreift, der kein XMLHttpRequest-Objekt anlegen kann, ist dieses Problem viel einfacher zu lösen, wenn man so früh wie möglich weiß, dass Ajax hier nicht verwendet werden kann.

Es ist niemals von Vorteil, wenn ein Nutzer erst einmal mit einer Web-Anwendung interagieren muss, damit diese ihm nach dem Ausfüllen eines Formulars dann mitteilt, dass er die jeweilige Funktion leider nicht nutzen kann.

Wenn aber bereits am Beginn der Seite versucht wird, ein XMLHttpRequest-Objekt zu erzeugen, eröffnen sich Alternativen, wie zum Beispiel, den Nutzer auf eine Seite ohne Ajax umzuleiten bevor die Interaktion beginnt.

Die Abfrage einrichten

Bisher wurde eine Seite geschrieben, die ein XMLHttpRequest-Objekt erzeugt, wenn sie geladen wird. Nun soll sie zu dem Zweck nutzbar gemacht werden, für den sie geschrieben wurde – Abfragen.

Dafür müssen mindestens zwei Parameter an die Methode Open weitergegeben werden. Die meisten davon sind einfach zu begreifen.


Der Parameter Methode definiert die Abfrage-Methode. Hier gibt es die Auswahl zwischen „POST“, „GET“ und „HEAD“. Zunächst wird GET eingesetzt.

Url ist die URL-Zeile der Seite, die abgefragt werden soll. Es kann jedoch nicht einfach jede alte Seite aufgerufen werden, denn es gibt eine Sandbox, die verhindert, dass Seiten außerhalb der Domain, aus der die Abfrage stammt, aufgerufen werden.

Async macht Ajax erst möglich. Obwohl es sich der Programmierschnittstelle entsprechend um einen optionalen Parameter handelt, ist er in diesem Falle zwingend und muss auf True gesetzt werden – ist er auf False gesetzt, läuft das Script nicht weiter, bis eine Antwort eingeht. Die Voreinstellung für diesen Parameter ist True, man könnte ihn also einfach ungesetzt lassen. Im Interesse von Leserlichkeit und Wartungsfreundlichkeit empfiehlt es sich jedoch dringend, diesen Parameter zu setzen.

User und Password dienen der Authentifizierung, wenn man diese verwenden möchte.

Sobald Async auf True gesetzt ist muss eine Methode definiert werden, die aufgerufen wird, sobald sich der Abfragestatus ändert – dies geschieht, indem die Eigenschaft onreadystatechange des Objekts XMLHttpRequest gesetzt wird.


Nun muss die Abfrage nur noch abgeschickt werden; zunächst bleibt alles einfach und die Abfrage wird ohne zusätzliche Daten abgeschickt.


In einem einfachen Beispiel kombiniert, sieht alles zusammen so aus:


Es bedarf nur dreier Zeilen, um die Ajax-Welt zu betreten, komplizierte Konzepte oder eine verdrehte Logik sind nicht vonnöten.

Themenseiten: Anwendungsentwicklung, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Ajax optimal einsetzen

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *