Ajax (Programmierung)
AJAX, kurz für Asynchronous Javascript and XML, steht für ein Konzept, um Daten zwischen einem Server und dem Browser auszutauschen, ohne dass die Seite mit jeder Anfrage komplett neu geladen werden muss. Der Name Ajax wurde zum ersten Mal in dem Essay Ajax: A New Approach to Web Applications von Jesse James Garrett von der Agentur Adaptive Path verwendet, welches am 18. Februar 2005 veröffentlicht wurde. Das Vorgehen war aber bereits vorher bekannt und wurde generell mit der verwendeten Technik XMLHttpRequest beschrieben.
Der Browser lädt zunächst eine Webseite bestehend aus HTML, CSS und JavaScript. Wenn der Benutzer dann eine Aktion ausführt, beispielsweise auf einen Link klickt, wird im Hintergrund eine HTTP-Anfrage an den Server geschickt. Dieser antwortet zumeist mit einem XML-Dokument, aus dem die Daten über das DOM gelesen und ebenfalls über das DOM in das bestehende HTML-Dokument eingefügt werden.
AJAX-basierte Webanwendungen sind im Unterschied zu klassischen Webanwendungen asynchron: Der Benutzer kann weitere Aktionen durchführen, während die HTTP-Anfrage noch übertragen bzw. bearbeitet sowie die Antwort übertragen wird. Bei traditionellen Webanwendungen hingegen muss der Anwender nach einer Aktion warten, bis eine komplette neue HTML-Seite dynamisch generiert und übertragen wurde. Durch AJAX bleibt der Benutzer immer auf einer Seite, die mittels JavaScript/DOM verändert wird.
Durch AJAX sind Anwendungen im WWW möglich, die Desktop-Anwendungen ähneln. Der Benutzer erhält unmittelbar Rückmeldung auf seine Eingaben und es gibt keine Pausen, in denen die Anwendung nicht ansprechbar ist.
Siehe auch: DHTML, JSON, Web Service, WinLIKE
Weblinks
Technische Quellen
- Ajax: A New Approach to Web Applications, der Essay, der den Namen geprägt hat (englisch)
- Ein Weblog über AJAX (englisch)
- Sammlung von Anwendungsbeispielen (englisch)
- Wiki mit Beispielen zu AJAX (englisch)
- Linksammlung zu AJAX-Bibliotheken und SDKs (englisch)
- Weblog zu Ajax (deutsch)
- Microsoft AJAX Implementierung für ASP.NET (englisch)
Anwendungsbeispiele
- Google Suggest zeigt Vorschläge an, die der Benutzer suchen könnte
- Google Maps – interaktive Weltkarte
- Google Mail ist Webmail-Anbieter und bietet eine Art E-Mail-Programm im Browser an
- Flickr – Webanwendung zur Verwaltung von Photos
- nexImage – Web-basiertes Bildbearbeitungswerkzeug