Web 2.0-Technik: So funktioniert AJAX Detail - Computerwelt

Computerwelt: Aktuelle IT-News Österreich


11.02.2010 Hans-Christian Dirscherl*

Web 2.0-Technik: So funktioniert AJAX

Sie wundern sich, wie z.B. Google Maps sofort auf Ihre Mauszeigerbewegung hin neues Kartenmaterial bereit stellt, obwohl die Seite nicht neu geladen wird? Die Antwort heißt AJAX - eine Schlüsseltechnologie des Web 2.0. Wir erklären wie AJAX funktioniert und was es für Vor- und Nachteile bringt.

Zunächst einmal zum Namen: Bildungsbürger denken bei Ajax an den Trojanischen Krieg und Homers Epen. Im Zeitalter des viel beschworenen Web 2.0 steht AJAX jedoch für „Asynchronous JavaScript and XML". Ajax ist somit eine Weiterentwicklung des klassischen Javascript und XML und keine grundlegend neue Technologie. AJAX bildet zudem die Basis für ein weiteres Schlagwort des Web 2.0, nämlich für Mashups, die technisch in der Regel auf der asynchronen Datenübertragung via AJAX basieren.

Unter einem Mashup versteht man zunächst einmal die Verknüpfung bereits bestehender Inhalte zu einem neuen Angebot, das es sinnvollerweise in dieser Form noch nicht geben sollte. Konkret auf das Internet und das Web 2.0 bezogen bedeutet Mashup, dass man bestehende Webangebote und deren Inhalte nimmt und daraus einen neuen Auftritt zusammenstellt. Bei diesen recycelten und neu zusammengefügten Inhalten kann es sich um alle denkbaren Darstellungs- und Inhalts-Formen handeln, ob Texte, Grafiken, Audio-Dateien oder Videos.

DAS UNTERSCHEIDET AJAX VON DER TYPISCHEN BROWSER-SERVER-KOMMUNIKATION Bei der klassischen Kommunikation zwischen Client-Rechner und Server lädt der Browser auf dem PC des Anwenders jeweils die gesamte Website neu, wenn Daten übertragen werden. Sie erkennen das Neuladen sofort: Die Seite baut sich neu auf. Anders bei AJAX: Hier kommunizieren Browser und Server fortwährend miteinander und zwar im Hintergrund. Das hat zur Folge, dass Sie den Datenaustausch zwischen Ihrem Rechner und dem Server keineswegs sofort erkennen können. Denn anders als beim klassischen Surfen wird nicht jedes Mal eine neue Website im Browser geladen beziehungsweise die vorhandene Seite erkennbar aktualisiert, sondern eben nur Daten nachgeladen und die Antwort des Servers wird mit Javascript/DHTML-Mitteln (Dynamic HTML) in die Website eingefügt. Damit das funktioniert, ist nur ein Javascript-fähiger Browser erforderlich, ein spezielles Plugin, wie zum Beispiel bei Adobe Flash oder Microsoft Silverlight, muss dagegen nicht installiert werden.

Tipp für Neugierige: Damit Sie vom ständigen Datenstrom doch etwas mitbekommen, benötigen Sie einen Netzwerksniffer. Neben separaten Tools wie Wireshark oder Linux-Befehlen wie tcpdump können Sie hierzu auch ein bequemes Add-on wie Live HTTP Headers in Firefox installieren.

Bei AJAX werden nur exakt die Daten nachgeladen, die tatsächlich für eine bestimmte Aufgabe benötigt werden. Beispielsweise neues Kartenmaterial bei Google Maps. Oder eine automatische Ergänzung für eine Tastatureingabe, die der Anwender in einem Webformular macht.

AJAX wirkt sich enorm auf die Aufgabenverteilung zwischen Client und Server aus. Einige Aufgaben, die bisher auf dem Server erledigt wurden, werden jetzt im Browser auf dem Rechner des Anwenders gemacht. Zwar war das bei Javascript in beschränktem Umfang auch jetzt schon möglich. So konnte man beispielsweise Benutzereingaben clientseitig auf Plausibilität prüfen (wodurch allerdings die zusätzliche serverseitige Validierung der Eingaben aus Sicherheitsgründen keineswegs überflüssig wurde). Doch unter AJAX hat die clientseitige Rechenarbeit ganz andere Ausmaße erreicht. Die Programmiersprache Javascript läuft hier richtig zur Hochform auf und wird nicht, wie so oft in der Vergangenheit, für nervtötende Animationen und Popups missbraucht.

Für den Anwender verschwimmen bei einer AJAX-Anwendung die Grenzen zur Desktop-Anwendung. Während man es sonst gewohnt ist, dass der Browser erst „reagiert“, wenn man die Website abschickt (zum Beispiel, wenn man ein Formular ausgefüllt und auf den Versenden-Button gedrückt hat), reagiert eine AJAX-Anwendung sozusagen in „Echtzeit“. Bei Google Suggest beispielsweise gibt man Buchstaben ein und bekommt sofort Vorschläge angezeigt für die Begriffe, die man eigentlich sucht. Die typische Wartezeit entfällt, weil im Hintergrund ständig Daten ausgetauscht und nachgeladen werden.

Nicht nur Vorteile Allerdings gibt es aus Anwendersicht auch einen Nachteil: Der Zurück-Button im Browser funktioniert bei AJAX-Seiten nicht wie erwartet. Da ja nicht jedes Mal eine neue Seite geladen wird, gibt es innerhalb der AJAX-basierten Kommunikation auch keine Möglichkeit, eine Seite zurück zu gehen. Hier muss der Anwender also umdenken. Allerdings gibt es von Programmiererseite her durchaus Möglichkeiten, eine Zurück-Funktion zu improvisieren. Ähnlich verhält es sich mit der Bookmark-/Lesezeichen-Funktion, die grundsätzlich bei AJAX auch nicht so funktioniert wie bei normalen HTML-Seiten. Abhilfe schaffen hier allerdings fertige Frameworks - dazu später mehr.

Diesen Artikel

Bewertung:

Übermittlung Ihrer Stimme...
Noch nicht bewertet. Seien Sie der Erste, der diesen Artikel bewertet!
Klicken Sie auf den Bewertungsbalken, um diesen Artikel zu bewerten.
  Sponsored Links:

IT-News täglich per Newsletter

E-Mail:
Weitere CW-Newsletter

CW Premium Zugang

Whitepaper und Printausgabe lesen.  

kostenlos registrieren

Aktuelle Praxisreports

(c) FotoliaHunderte Berichte über IKT Projekte aus Österreich. Suchen Sie nach Unternehmen oder Lösungen.

Zum Thema

  • ectacom GmbH

    ectacom GmbH Aus- und Weiterbildung, IT-Asset- und Lizenzmanagement, Übernahme von Softwareprojekten, Datenschutz, Antiviren- und Virenscanner Software, Backup und Recovery Systeme, Firewalls,... mehr
  • adesso Austria GmbH

    adesso Austria GmbH Öffentliche Verwaltung, Grundstoffindustrie, Großhandel, Finanzdienstleistungen, Fertigung, Produktion und Konstruktion, Druck- und Verlagswesen, Qualitätssicherung,... mehr
  • free-com solutions gmbh

    free-com solutions gmbh Werbewirtschaft, Wasser- und Energieversorgung, Vereine und Verbände, Umweltschutz, Touristik, Personenverkehr, Öffentliche Verwaltung,... mehr
  • eyepin GmbH

    eyepin GmbH Application Service Providing, Auftragsentwicklung für Software, Individual-Softwareentwicklung, Programmierung, Übernahme von Softwareprojekten mehr

Hosted by:    Security Monitoring by: