Asynchronous JavaScript and
XML (Ajax) bezieht sich auf eine Reihe von Technologien, die für die Entwicklung von Webanwendungen
verwendet werden. Durch Kombinieren dieser Technologien sind
Webseiten reaktionsfähiger, da kleine Datenpakete mit dem Server ausgetauscht werden und Webseiten
nicht bei jeder Eingabeänderung durch den Benutzer erneut geladen
werden. Mit Ajax kann ein Benutzer einer Webanwendung mit einer Webseite interagieren, ohne
durch das ständige erneute Laden der Webseite unterbrochen zu werden.
Die Websiteinteraktion findet schnell statt. Es werden dabei nur Teile der Seite neu geladen und
aktualisiert.
Ajax setzt sich aus den folgenden Technologien zusammen:
- XHTML und CSS für die Darstellung von Informationen.
- Document Object Model (DOM) für die dynamische Interaktion mit und die Anzeige der
dargestellten Informationen.
- XMLHttpRequest-Objekt für die asynchrone Bearbeitung von Daten mit dem Web-Server.
- XML, HTML und XSLT für Datenaustausch und -bearbeitung.
- JavaScript für das Binden von Datenanforderungen
und die Informationsanzeige.
Ajax integriert diese Technologien, um einen neuen Ansatz für die Entwicklung von
Webanwendungen zu erstellen.
Ajax definiert eine Methode für die Initialisierung der Client-Server-Kommunikation ohne
erneutes Seitenladen. Es bietet einen Weg, Teilseitenaktualisierungen zu ermöglichen. Von der
Perspektive eines Webseitenbenutzers aus gesehen, bedeutet dies verbesserte Interaktion mit einer Webanwendung.
Dadurch erhält der Benutzer umfassendere Kontrolle über seine Umgebung, ähnlich
wie bei einer Desktopanwendung.
In einer traditionellen Webanwendung werden HTTP-Anforderungen, die durch die Interaktion des Benutzers
mit der Webschnittstelle initialisiert werden, an einen Web-Server
gesendet. Der Web-Server verarbeitet die Anforderung und gibt dem Client eine HTML-Seite
zurück. Während dem HTTP-Transport kann der Benutzer nicht mit der Webanwendung
interagieren.
Bei einer Ajax-Webanwendung wird der Benutzer während Interaktionen mit der
Webanwendung nicht unterbrochen. Mit der Ajax-Engine bzw. dem JavaScript-Interpreter kann der Benutzer
unabhänig vom HTTP-Transport zum und vom Server mit der Webanwendung interagieren, indem die Schnittstelle
wiedergegeben und Kommunikationen mit dem Server
seitens des Benutzers verarbeitet werden.

Ajax-Einschränkungen
Ajax ist ein Webanwendungsentwicklungsverfahren, das entworfen wurde, um
Webseiten reaktionsfähiger und für den Benutzer interaktiver zu machen.
Ajax hat aber auch einige Einschränkungen, die beachtet werden müssen,
bevor eine Ajax-basierte Anwendung entwickelt wird. Die folgenden Einschränkungen stellen einige typische
Nachteile dar:
- Browserunterstützung - Nicht alle Browser unterstützen JavaScript- oder XMLHttpRequest-Objekte.
Selbst in Browsern, die JavaScript und XMLHttpRequest unterstützen, können diese Objekte
unterschiedlich behandelt werden. Die Ajax-Implementierung jedes einzelnen Browsers
muss berücksichtigt werden.
- Sicherheit und Privatsphäre von Benutzern - Nicht alle Problemstellungen werden berücksichtigt.
Probleme bei Sicherheit und der Privatsphäre von Benutzern müssen bei der Entwicklung einer Ajax-Anwendung
berücksichtigt werden.
- Zugänglichkeit - Da nicht alle Browser JavaScript- oder XMLHttpRequest-Objekte unterstützen,
müssen Sie sicherstellen, dass die Webanwendung für alle Benutzer
zugänglich ist.
- Lesezeichen und Navigation - Da Ajax verwendet wird, um Teilinhalte auf einer vorhandenen Seite
asynchron zu laden, entsprechen einige der Seiteninformationen möglicherweise nicht der
neu geladenen Seite. Der Browserverlauf und die -lesezeichen weisen möglicherweise nicht das richtige Verhalten auf,
weil die URL nicht geändert wurde, obwohl
Teile der Seite geändert wurden.
- Suchmaschine - Ajax-Anwendungen können nicht durchsucht werden.
Sie können jedoch Ajax-Features und -Elemente in einer durchsuchbaren Anwendung
verwenden.