Zum Inhalt springen

SEO Analyse » SEO Lexikon » a » Ajax

AjaxAjax steht für die Wortfolge Asynchronous JavaScript and XML. Diese bezeichnet ein Konzept, das die asynchrone Übertragung von Daten zwischen einem Browser und einem Server erlaubt. Mit seiner Hilfe können HTTP-Anfragen verarbeitet und Inhalte einer Seite verändert werden, ohne dass die Seite jedes Mal neu geladen werden oder der gesamte Inhalt neu übertragen werden muss. Dies ist bei Webseites der Fall, die auf dem herkömmlichen Austausch von Daten über eine Datenbank und einer entsprechenden HTTP-Anfrage aufbauen.

Verwendete Technologien bei Ajax

Für Ajax werden unterschiedliche Technologien kombiniert. Die Scriptsprachen HTML und XHTML dienen zusammen mit dem Document Object Modell (DOM) zur Ausgabe der Inhalte. Mit Javascript kann die Ausgabe dieser Inhalte manipuliert werden, sodass zum Beispiel durch ein Ereignis wie das Anklicken eines Links Inhalte sichtbar oder unsichtbar werden oder durch die Nutzung des XMLHttpRequest-Objects eine Datenabfrage ausgelöst wird, die dann mit einer JavaScript-Funktion an der gewünschten Stelle ausgeben wird.

In Zusammenhang mit Ajax werden häufig auch Technologien wie CSS und XLST verwendet. Sie hatten ursprünglich nichts mit dem Konzept Ajax zu tun. Die Kombination von Javascript und CSS erlaubt es aber, bestimmte Verhalten und Eigenschaften, die in einem Javascript definiert sind, direkt an CSS-Klassen oder Ids zu übergeben. Auf diese Weise lassen sich einzelne Abschnitte einer Webseite gezielt verändern oder dynamische Elemente erzeugen. Besonders erfolgreich wurde die Kombination von Ajax und CSS bei der Entwicklung von Benutzeroberflächen für Touchscreens angewendet.

Ajax- und herkömmliche Anwendungen im Vergleich

Bei Ajax-Anwendungen bekommt der Nutzer den Eindruck, dass sie ganz auf dem Computer des Anwenders ausgeführt werden. Bei herkömmlichen Webseites ist aufgrund des Anfrage-Antwort-Schemas (Request-Response-Paradigmas) jede Aktion mit einer entsprechenden Anfrage an den Server verbunden. Besonders bei einer verzögerten Verbindung oder besonders bei umfangreichen Anfragen verzögert sich so oftmals der Seitenaufbau und es entstehen unweigerlich Wartezeiten oder auch Brüche im Ablauf einer Anwendung. So wird für den Anwender deutlich, dass die Anwendung auf mehrere Bereiche verteilt ist. Genau dieser Eindruck und die damit verbundenen Nachteile sollen durch Ajax umgangen werden.

Wird zum Beispiel bei einer traditionellen Webanwendung ein Formular ausgefüllt und Daten übermittelt, dann antwortet der Server, indem er eine neu generierte Webseite mit den entsprechenden Daten an den Browser des Nutzers schickt. Dadurch erscheint die Anwendung insgesamt als träge und wenig intuitiv, verglichen mit einer herkömmlichen Desktopanwendung.

Durch Ajax-Anwendungen aber besteht die Möglichkeit, per Anfrage nur die Daten vom Server anzufordern, die tatsächlich verändert worden sind bzw. benötigt werden. Der Aufruf der veränderten Inhalte erfolgt asynchron. Während die Daten vom Server geladen werden, kann der Benutzer weiter mit der Anwendung interagieren, statt darauf zu warten, dass die ganze Site neu aufgebaut wird. Nach dem Laden der Daten werden diese durch eine JavaScript-Funktion an der entsprechenden Stelle aufgerufen.

Ajax ermöglicht also schnellere und zügigere Abfragen oder Benutzereingaben. Der Grund für die bessere Performance liegt darin, dass wesentlich weniger Informationen zwischen Webserver und Browser ausgetauscht werden müssen und das Laden der Daten asynchron, also an entsprechender Stelle erfolgt, ohne dass die Webseite neu aufgebaut werden muss. Dadurch, dass viele Verarbeitungsschritte clientseitig durchgeführt werden können, wird auch die Serverlast verringert. Bei einem Fotodienst kann auf diese Weise zum Beispiel der Name eines Bildes verändert werden und dieser in die entsprechende Spalte einer Datenbank eingetragen werden, ohne dass der gesamte Seiteninhalt wie Bilder und Texte noch einmal übertragen werden muss. Geht man von großen Datenmengen aus, wie sie durch Bildergalerien entstehen, liegt der Vorteil von Ajax auf der Hand.

Vorteile von Ajax

Der größte Vorteil von Ajax liegt in der deutlich besseren Performance. Da die entsprechende Webseite nach einer Eingabe oder einer Abfrage nicht jedes Mal neu geladen werden muss, reagieren Anwendungen deutlich schneller und die Serverlast verringert sich. Dadurch werden auch mehr Anfragen möglich, was allen Nutzern einer Webseite zugutekommt.

Allerdings wird dieser Vorteil durch das Problem des sogenannten Pollings oft wieder aufgehoben. Da Webserver keine asynchronen Ereignisse an einen Ajax-Client durchleiten können, wenn sie von diesem nicht ausgelöst wurden, muss ein Ajax-Client im Prinzip permanent beim Server nachfragen, ob ein neues Ereignis erzeugt worden ist. Dadurch entsteht eine höhere Auslastung. Dieses Problem lässt sich aber umgehen, indem mit einer Ajax-Anwendung immer eine serverseitige Anfrage verknüpft ist, die dem Anwendungs-Client bei Eintreten eines entsprechenden Ereignisses eine Antwort schickt. Dadurch wird das Polling überflüssig.

Ein weiterer Vorteil liegt in der freien Zugänglichkeit der Technologie. Da Ajax auf Technologien aufbaut, die in jedem neueren Browser integriert sind, wird kein spezielles Plug-in benötigt, vorausgesetzt die JavaScript-Unterstützung im Browser wurde vom Anwender nicht deaktiviert.

Allerdings benötigen Ajax-Anwendungen umfangreiche Tests, um den Eigenarten der verschiedenen Browser gerecht zu werden. Um diesen Aufwand zu verringern, entstanden eine ganze Reihe von Programmbibliotheken, die zu einer weitgehend fehlerfreien Programmierung beitragen. Um Anwendungen zu entwickeln, die von den entsprechenden Browsern richtig ausgegeben werden, wurden auch Technologien zur serverseitigen Browsererkennung entwickelt.

Nachteile von Ajax

Zu den Kritikpunkten von Ajax gehört die Schwierigkeit, die Funktionalität der Zurück-Schaltfläche des Browsers zu erhalten. Beim Klicken der Schaltfläche besteht die Gefahr, dass nicht der vorherige Zustand einer Anwendung wiederherstellt wird. Entwickler haben verschiedene Lösungen gefunden, um diesem Problem zu begegnen. Dazu gehören HTML-Elemente wie Inlineframes oder eine eigene Callback-function, die ausgelöst wird, wenn der Nutzer auf die Zurück-Schaltfläche des Browsers klickt.

Ähnlich schwierig gestaltet sich das Setzen von Lesezeichen bei Webseites, deren Inhalte asynchron geladen werden. Dieses Problem lässt sich in Verbindung mit einem sogenannten Anker lösen, der es möglich macht dem Prozessfluss einer Anwendung zu folgen. Auf diese Weise kann ein bestimmter Anwendungszustand wieder hergestellt werden. Mit diesem Ansatz lassen sich auch einige Probleme, die durch den nicht funktionsfähigen Zurück-Button entstehen, lösen.

Bei aufwendigen Prozessen können auch Ajax-Anwendungen den Eindruck hinterlassen, nur äußerst zähflüssig zu performen. Eine lange Latenzzeit sollte in Form eines visuellen Feedbacks, zum Beispiel einer Sanduhr, dargestellt werden, die den Nutzer auf laufende Hintergrundaktivitäten aufmerksam macht.

Auch die Suchmaschinenindizierung wird durch die Verwendung von Ajax etwas erschwert. Bei der Frage nach der richtigen Indizierung sollte zunächst festgelegt werden, welche Inhalte von einer Suchmaschine erfasst werden sollen. Beim sogenannten Lightweight Indexing werden existierende Elemente wie Metatags oder Überschriften für die Indizierung verwendet. Bei der Extra-Link-Strategy werden zusätzlich weiterführende Links auf der Webseite angebracht, die dem Suchroboter helfen die „Seitenstruktur“ zu erkennen. Allerdings werden unsichtbare Links von den meisten Robots als Täuschungsmanöver aufgefasst.

Die Secondary-Site-Strategy ermöglicht es, Inhalte einem Suchroboter durch eine zweite Webseite voll zugänglich zu machen. Allerdings wird besteht auch bei dieser Art der Indizierung die Gefahr, dass sie als Täuschungsmanöver missverstanden wird. Deshalb sollte auf der Originalseite immer ein Metatag Robots eingebaut werden.

Verbreitung und Bedeutung von Ajax

Fast sämtliche Browserversionen, die seit der Einführung von Ajax entwickelt wurden, unterstützen Ajax-Anwendungen. Alle aktuellen Versionen tun dies nativ. Ajax spielt heute bei vielen Karten-, Foto- und Maildiensten eine Rolle und ist auch aus sozialen Netzwerken nicht mehr wegzudenken. Das sogenannte Web 2.0 und auch das mobile Internet sind ohne die Verwendung von Ajax nicht mehr denkbar. Gerade in Zusammenhang mit Touchscreens wird Ajax heute auch überall dort verwendet, wo dynamische Elemente wie zum Beispiel Slider die Strukturierung von Inhalten und die Bedienbarkeit erleichtern sollen. Insofern ist Ajax zu einer unverzichtbaren Kerntechnologie moderner Internetanwendungen geworden.

Zusammenfassung

Ajax ermöglicht die asynchrone Datenübertragung zwischen Browser und Server, wodurch HTTP-Anfragen verarbeitet werden, ohne die gesamte Seite neu zu laden. Es kombiniert Technologien wie HTML, XHTML, DOM und Javascript und integriert andere wie CSS und XLST, um dynamische Webinhalte zu erzeugen und Benutzeroberflächen für Touchscreens zu entwickeln.

Ajax-Anwendungen bieten eine schnelle Interaktion, da sie nur die erforderlichen Daten vom Server anfordern, was die gefühlte Geschwindigkeit und Effizienz erhöht. Dies verringert die Serverlast und ermöglicht, dass beispielsweise Namen in Bildergalerien geändert werden, ohne die gesamte Seite neu zu laden.

Die Vorteile von Ajax sind eine verbesserte Performance und eine reduzierte Serverlast. Jedoch gibt es Herausforderungen wie das Problem des „Pollings“ und die Notwendigkeit umfangreicher Tests wegen Browser-Unterschieden. Einige bekannte Nachteile sind Schwierigkeiten mit der Zurück-Schaltfläche des Browsers, das Setzen von Lesezeichen und Herausforderungen bei der Suchmaschinenindizierung.

Ajax hat sich weit verbreitet und ist eine Kernkomponente moderner Webdienste geworden, insbesondere in sozialen Netzwerken, Kartendiensten und beim mobilen Internet. Es hat seine Bedeutung in der Entwicklung dynamischer Webinhalte und in der Bedienung von Touchscreens bewiesen.

Häufige Fragen und Antworten

Was bedeutet Ajax?

Ajax steht für „Asynchronous JavaScript and XML“ und bezeichnet ein Konzept, das die asynchrone Übertragung von Daten zwischen einem Browser und einem Server ermöglicht. Mit Ajax können HTTP-Anfragen verarbeitet und Inhalte einer Seite verändert werden, ohne dass die Seite jedes Mal neu geladen werden muss.

Welche Technologien werden bei Ajax verwendet?

Bei Ajax werden verschiedene Technologien kombiniert. Dazu gehören HTML, XHTML, das Document Object Modell (DOM) und Javascript. Auch CSS und XLST werden häufig in Verbindung mit Ajax eingesetzt.

Welche Vorteile bietet Ajax?

Ajax ermöglicht eine schnellere und zügigere Interaktion mit Webanwendungen. Durch die asynchrone Datenübertragung werden nur die erforderlichen Daten vom Server angefordert, was die Performance verbessert und die Serverlast verringert.

Bildnachweis: iStock.com/AksanaKavaleuskaya


Zurück zur Hauptseite: a
Alle Marken, Warenzeichen, Unternehmens- und Produkt-Bezeichnungen sind mit, aber auch ohne definitive Kennzeichnung, Eigentum des Inhabers der Rechte. Alle aufgeführten Elemente dienen lediglich der informativen Beschreibung.