Die ganze Welt redet von AJAX und viele Anwender empfinden den Einsatz selbiger Technologie als recht angenehm. Doch was ist das?
AJAX steht für Asychronous JavaScript And XML, wobei XML so recht nicht in den Namen passt. Für das, wofür man AJAX zum großen Teil einsetzt, kommt XML nämlich gar nicht zum Zuge.
Wieso ist es bei Anwendern so beliebt?
Mit AJAX können Abfragen zu HTTP-Servern abgesendet werden, ohne, dass die Seite neu geladen werden muss. Damit kann man eine erhöhte Performance vortäuschen (etwa wenn eine Box, deren Generierung 1-2 Sekunden dauert, erst nach dem Laden der Seite erscheint, anstatt den Benutzer warten zu lassen, bis die komplette Seite generiert ist). Doch manchmal ist es je nach Anwendungszweck nicht sinnvoll, für eine Abfrage die komplette Seite neu laden zu lassen. Ein Beispiel sei eine Session in einer Administrationsoberfläche. Ist sie abgelaufen, muss sich der Benutzer neu anmelden. Per AJAX ist es recht komfortabel möglich, sowohl das Verlängern der Session, als auch ein neues Anmelden zu ermöglichen. Ohne, dass die Seite neu geladen werden muss.
Was kann ich mit AJAX machen?
Aus Entwickler-Sicht lässt sich mit AJAX all das realisieren, was man normalerweise mit normalen GET oder POST-Abfragen machen würde. Man könnte das Spiel sogar so weit treiben, dass eine Webseite nur noch in Form eines Grundgerüsts den Server verlässt und alles andere nachträglich nachgeladen wird.
Jedoch ist es bei AJAX wie in der Medizin: Die Dosis macht das Gift. Man sollte sich gut überlegen, ob AJAX wirklich für das sinnvoll ist, wofür man es einzusetzen plant. Denn bei der Verwendung ergeben sich einige Nachteile (für den Benutzer):
- Der Seitenaufbau ist nicht selten langsamer
- Für den Benutzer ist nicht ersichtlich, was als nächstes passieren könnte
- Ein JS-Fehler und die Scripte funktionieren im ungünstigsten Fall nicht mehr
- Man kann so gut wie gar nicht ordentlich den Zustand einer Seite verlinken
Was sind die Systemvoraussetzungen?
Wichtig zu wissen ist, dass AJAX zum sensibleren Teil auf dem Client stattfindet. Während man Server-Einstellungen notfalls soweit verbiegen kann, bis man seine gewünschten Eigenschaften dargestellt hat, kann man kaum einen Client dazu zwingen, sich an irgendwelche Umgebungsrichtlinien der Entwickler zu halten.
Gebraucht wird auf dem Server nichts anderes als normale Anfragen auch benötigen würden. Dies läuft im Wesentlichen auf eine Script-Sprache hinaus, die die Anfragen bearbeitet. Der Client hingegen braucht einen AJAX-fähigen Browser. Dies sind so gut wie alle halbwegs aktuellen Browser; selbst der Internet Explorer unterstützt AJAX schon seit geraumen Zeiten (IE 5.0, also seit 1999). Da AJAX per JavaScript aktiviert wird, wärs noch günstig, wenn der Client JS zulässt
Im Folgenden möchte ich euch nun je ein GET- und ein POST-Beispiel zeigen, wie man AJAX einsetzen kann, und zwar OHNE die Verwendung eines JavaScript-Frameworks. Dies hat den Sinn, dass für viele Aufgaben ein solches Framework keinen Sinn macht und sich nur negativ in der Download-Zeit niederschlägt. Denn so kompliziert ist AJAX eigentlich gar nicht.
AJAX steht für Asychronous JavaScript And XML, wobei XML so recht nicht in den Namen passt. Für das, wofür man AJAX zum großen Teil einsetzt, kommt XML nämlich gar nicht zum Zuge.
Wieso ist es bei Anwendern so beliebt?
Mit AJAX können Abfragen zu HTTP-Servern abgesendet werden, ohne, dass die Seite neu geladen werden muss. Damit kann man eine erhöhte Performance vortäuschen (etwa wenn eine Box, deren Generierung 1-2 Sekunden dauert, erst nach dem Laden der Seite erscheint, anstatt den Benutzer warten zu lassen, bis die komplette Seite generiert ist). Doch manchmal ist es je nach Anwendungszweck nicht sinnvoll, für eine Abfrage die komplette Seite neu laden zu lassen. Ein Beispiel sei eine Session in einer Administrationsoberfläche. Ist sie abgelaufen, muss sich der Benutzer neu anmelden. Per AJAX ist es recht komfortabel möglich, sowohl das Verlängern der Session, als auch ein neues Anmelden zu ermöglichen. Ohne, dass die Seite neu geladen werden muss.
Was kann ich mit AJAX machen?
Aus Entwickler-Sicht lässt sich mit AJAX all das realisieren, was man normalerweise mit normalen GET oder POST-Abfragen machen würde. Man könnte das Spiel sogar so weit treiben, dass eine Webseite nur noch in Form eines Grundgerüsts den Server verlässt und alles andere nachträglich nachgeladen wird.
Jedoch ist es bei AJAX wie in der Medizin: Die Dosis macht das Gift. Man sollte sich gut überlegen, ob AJAX wirklich für das sinnvoll ist, wofür man es einzusetzen plant. Denn bei der Verwendung ergeben sich einige Nachteile (für den Benutzer):
- Der Seitenaufbau ist nicht selten langsamer
- Für den Benutzer ist nicht ersichtlich, was als nächstes passieren könnte
- Ein JS-Fehler und die Scripte funktionieren im ungünstigsten Fall nicht mehr
- Man kann so gut wie gar nicht ordentlich den Zustand einer Seite verlinken
Was sind die Systemvoraussetzungen?
Wichtig zu wissen ist, dass AJAX zum sensibleren Teil auf dem Client stattfindet. Während man Server-Einstellungen notfalls soweit verbiegen kann, bis man seine gewünschten Eigenschaften dargestellt hat, kann man kaum einen Client dazu zwingen, sich an irgendwelche Umgebungsrichtlinien der Entwickler zu halten.
Gebraucht wird auf dem Server nichts anderes als normale Anfragen auch benötigen würden. Dies läuft im Wesentlichen auf eine Script-Sprache hinaus, die die Anfragen bearbeitet. Der Client hingegen braucht einen AJAX-fähigen Browser. Dies sind so gut wie alle halbwegs aktuellen Browser; selbst der Internet Explorer unterstützt AJAX schon seit geraumen Zeiten (IE 5.0, also seit 1999). Da AJAX per JavaScript aktiviert wird, wärs noch günstig, wenn der Client JS zulässt
Im Folgenden möchte ich euch nun je ein GET- und ein POST-Beispiel zeigen, wie man AJAX einsetzen kann, und zwar OHNE die Verwendung eines JavaScript-Frameworks. Dies hat den Sinn, dass für viele Aufgaben ein solches Framework keinen Sinn macht und sich nur negativ in der Download-Zeit niederschlägt. Denn so kompliziert ist AJAX eigentlich gar nicht.