Zum Inhalt springen

SEO Analyse » SEO Lexikon » h » Hijax

Hijax Begriffserklärung und Definition

HijaxDer Begriff Hijax bezeichnet eine Technologie der progressiven Verbesserung von AJAX-Anwendungen. Damit soll eine Lösung für das ständig präsente Kompatibilitätsproblem geschaffen werden. Betreiber von Webseiten müssen theoretisch berücksichtigen, dass ihre User unterschiedliche Browser unterschiedlicher Generationen benutzen.

Gerade bei JavaScript, CSS und Flash besteht aber die Gefahr, dass die Inhalte der eigenen Webseite nicht jedem Nutzer zugänglich gemacht werden können, da sein Browser bestimmte Anwendungen nicht abbilden kann. Mit dieser progressiven Verbesserung wird der Inhalt semantisch von der Präsentation getrennt. Diese grundlegenden Informationen werden dann je nach Bandbreite der Internetverbindung und Funktionalität des Browsers in einer entsprechenden Qualität der Seite angezeigt. Durch diese Form der Reaktion auf die Kompatibilitätsprobleme wurde die vorherige Praxis der Fehlertoleranz abgelöst.

Hijax soll ermöglichen, dass sich die Performance der Webseite dynamisch an die Möglichkeiten des Browsers anpasst. Die Methode der Fehlertoleranz verfolgte den umgekehrten Ansatz, es wurde eine aktuelle, hochmoderne Version der Webseite für die neuesten Browser erstellt. Der Entwickler verließ sich darauf, dass zumindest große Teile dieser Information auf älteren Browser einsehbar waren oder hielt mehrere Versionen der Webseite bereit.

AJAX

Grundlage für Hijax ist die Programmiersprache AJAX. Hierbei handelt es sich um eine Strategie, Daten asynchron zu übertragen. Während der Anzeige einer Webseite soll es durch AJAX möglich sein, Datenanfragen durchzuführen und den Inhalt der Seite zu aktualisieren. Hijax soll wiederum für die Funktionalität sorgen. Hintergrund für die Entwicklung von AJAX ist die Tatsache, dass im System einer herkömmlichen Webseite für jede Abfolge auf der Webseite auch eine Kommunikation mit dem entsprechenden Server stattfindet. Hat der Benutzer beispielsweise Daten in einem Formular hinterlegt, dann würde der Ablauf auf einer regulären Webanwendung die Generierung einer neuen „Ergebnisseite“ nach sich ziehen.

Der für diese Abfolge nötige Zugriff auf den Server bindet die Ressourcen des Browsers und lässt den Benutzer ohne Möglichkeiten der Interaktion warten. Diese Wartezeit kann durch verzögerte Server-Antworten zu einer unbefriedigenden Performance für den Nutzer führen. AJAX fungiert hier als Dienstleister, d.h. die eigentliche Anfrage wird auf die Engine delegiert und hält die Ressourcen des Browsers offen. Der Nutzer kann also bis zur Rückantwort weiterhin die Webseite nutzen.

Das Ergebnis der Nutzeranfrage wird dann in Form einer neuen JavaScript-Funktion angezeigt. Dadurch werden die Ladezeiten verringert, da nur tatsächlich notwendige Daten zwischen Browser und Server ausgetauscht werden müssen. Wenn der Nutzer in einer Webanwendung beispielsweise Fotos verwaltet, so führt eine Änderung der Dateinamen mit einer AJAX-Engine zu erheblich weniger Aufwand, da nur der Dateiname aktualisiert wird. Auf dem herkömmlichen Weg würde der Browser für die neue Version der Webseite alle Daten erneut laden.

Für AJAX, und somit auch für Hijax, werden verschiedene Web-Techniken genutzt. Grundlegende Basis aller AJAX-Anwendungen ist die Auszeichnungssprache des World Wide Web, genannt HTML. Mithilfe des „Document Object Model“ (DOM) soll gewährleistet werden, dass verschiedene JavaScript-Versionen und DHTML-Techniken auf gemeinsame Standards zurückführbar sind. JavaScript wiederum bietet verschiedene Möglichkeiten, nur Teile einer Webseite dynamisch zu verändern. Bei der Eingabe von Daten in ein Dialogfeld bietet sich beispielsweise die Option, die Plausibilität dieser Daten vor Absendung der Anfrage an den Server zu prüfen. Mittels AJAX und Hijax bietet JavaScript wiederum die Möglichkeit, nur bestimmte Teile der Seiten zu aktualisieren.

Eine wichtige Grundlage für AJAX (Hijax) ist die XMLHttpRequest (XHR). Hierbei werden über das Protokoll HTTP Datenanfragen gesendet, die dynamisch vom Server abgerufen werden können, ohne dass dafür die Ressourcen der Webseite blockiert sind. Eine solche Anfrage aus einem JavaScript heraus führt somit zu keiner Beeinträchtigung des Scripts.

Weiterhin gelten bestimmte Paradigmen und Grundsätze für den Aufruf von Funktionen oder Ressourcen. Im Bereich der HTTP-Anfragen greift Hijax auf die Normen des Representational State Transfer (ReST) zurück. Für den Austausch von Daten zwischen Systemen und für Remote Procedure Calls nutzen AJAX und Hijax das Netzwerkprotokoll SOAP. SOAP stellt ein Rahmenwerk für das Design und die Abbildung von Nachrichten dar, das es ermöglichen soll, dass unterschiedliche Systeme miteinander kommunizieren können.

Zusätzlich greifen AJAX und Hijax auf verschiedene Verfahren für die asynchrone Datenübertragung zurück. Zuerst sind hier alle Verfahren zu nennen, die die Informationen der Webseiten in reiner, vereinfachter Textform übertragen. Mithilfe einer solchen vereinfachten Auszeichnungssprache (Markup) soll die Umwandlung eines Formats in ein anderes erleichtert werden. Als Beispiel kann hier die Markup Language reStructuredText (reST) genannte werden, die Bestandteil der Programmiersprache Python ist und Formate wie ODT, Manpage, S5, XHTML, XML und Latex unterstützt.

Im Bereich JavaScript wird diese Funktion von JSON übernommen. JavaScript Object Notation stellt eine vereinfachte Textform für den Datenaustausch zwischen Anwendungen dar. Abgesehen von kleinen Abweichungen in den Unicode-Tabellen, kann dieses Dateiformat von praktisch allen verbreiteten Programmiersprachen interpretiert werden.

Hijax

AJAX hat also zu einer erheblichen Verringerung der Ladezeiten gesorgt, da immer nur die tatsächlichen Änderungen aktualisiert werden müssen. Mit Hilfe von AJAX werden weniger serverseitige Ressourcen verbraucht als in herkömmlichen Webanwendungen. Es ergaben sich jedoch einige Probleme, die mittels Hijax gelöst werden sollen. Zum einen erschwert die nur teilweise Erneuerung der Webseite eine korrekte Funktionalität. AJAX hatte Schwierigkeiten, die History des Nutzers korrekt zu speichern, da eben nicht die komplette Webseite neu geladen wurde.

Zum anderen erschwerte die Arbeitsweise von AJAX den Webcrawlern ihre Arbeit. Somit war eine Webseitenoptimierung für den Nutzer zwar möglich, aber die Relevanz der Webseite für bestimmte Suchbegriffe wurde empfindlich gestört. Die Betreiber hatten große Schwierigkeiten mit der Optimierung ihrer Seiten für die einzelnen Suchmaschinen (SEO). Diese Herausforderungen wurden auch von Seiten der Suchmaschinen teilweise gelöst, jedoch bestand immer noch das klassische Problem der Abwärtskompatibilität. Browser ohne JavaScript konnten diese Technologie nicht nutzen, unabhängig davon, ob der Nutzer JavaScript deaktiviert hatte, oder ob der Browser diese Anwendung nicht unterstützte. Dadurch waren einzelne Webseiten zwar hervorragend konzipiert, aber eben nicht für jeden Nutzer erreichbar.

Hijax sollte also genau diese Probleme angehen und beheben. AJAX sollte sicherstellen, dass die entsprechende Webseite für alle Browser-Versionen angezeigt wird und die Erreichbarkeit der Webseiten mit AJAX-Nutzung für Crawler verbessern. Hijax stellt eine vereinfachte AJAX-Version dar, eine Art simplified AJAX. Hierbei wird garantiert, dass Hijax abfragt, inwieweit der Browser Java Script unterstützt und inwiefern er sämtliche Optionen auch wirklich abbilden kann. Hijax hält sowohl für mangelnde JavaScript-Kompatibilität als auch für Übertragungsfehler Normallösungen der Webseite bereit. Darüber hinaus werden alternative Eingabemöglichkeiten für den User vorgehalten.

Wenn also die JavaScript-Anwendung nicht möglich ist, stellt die Webseite ein „normales“ Formularfeld zur Verfügung. Hijax entscheidet dynamisch, welche Voraussetzungen für die Funktionalität gegeben sind und kann aus dieser Information die entsprechenden Arbeitsschritte ableiten. Im „schlimmsten“ Fall sorgt also Hijax dafür, dass der Nutzer aufgrund der eigenen Anfrage eine gewisse Ladezeit für den Aufbau einer neuen Seite in Kauf nehmen muss, gewährt aber die Garantie, dass die Seite eben auch unter diesen ungünstigen Voraussetzungen funktioniert.

Anwendungsgebiete von Hijax

Das größte Anwendungsgebiet für AJAX oder Hijax sind die verschiedenen Plattformen der sozialen Netzwerke. Es existieren spezielle Büroanwendungen, die auf Hijax basieren, wie beispielsweise AJAX-Write und iRow. Virtuell verfügbare Landkarten wie Google Maps und Open Street Map funktionieren über AJAX. Es gibt spezielle Anwendungen für das Customer Relationship Management und Wikipedia-Browser. Die meisten Instant Messenger basieren auf Hijax. Das bekannteste Beispiel ist aber sicher Google Suggest, welches beim Eintippen des Suchbegriffs automatisch mit jedem neuen Buchstaben entsprechende Vervollständigungen anbietet, um dem Nutzer die Suche zu erleichtern.

Zusammenfassung

Hijax ist eine Technologie zur progressiven Verbesserung von AJAX-Anwendungen, die die Kompatibilität mit verschiedenen Browsern und Generationen verbessert. Im Gegensatz zur Methode der Fehlertoleranz, die mehrere Versionen einer Webseite bereithält, passt Hijax die Webseitenperformance dynamisch an den jeweiligen Browser an.

AJAX, die Grundlage für Hijax, ermöglicht asynchronen Datenaustausch. Es verbessert die Interaktion und verringert die Ladezeiten, indem nur notwendige Daten zwischen Server und Browser ausgetauscht werden. AJAX und Hijax verwenden dabei Web-Technologien wie HTML, JavaScript, Document Object Model (DOM) und XMLHttpRequest (XHR).

Hijax adressiert die Herausforderungen, die AJAX in Bezug auf Suchmaschinenoptimierung (SEO) und Benutzerhistorie stellt. Es bietet Lösungen für Webseiten, die JavaScript nicht unterstützen und verbessert ihre Auffindbarkeit durch Webcrawler.

Anwendungsgebiete für Hijax und AJAX sind vielfältig und reichen von sozialen Netzwerken bis zu Büroanwendungen und Instant Messengern. Ein bekanntes Beispiel ist Google Suggest, das die Benutzersuche durch automatische Vorschläge vereinfacht.

Häufige Fragen und Antworten

Was ist Hijax?

Hijax ist eine Technologie zur progressiven Verbesserung von AJAX-Anwendungen, die die Kompatibilität mit verschiedenen Browsern und Generationen verbessert.

Welche Vorteile bietet Hijax?

Hijax ermöglicht eine dynamische Anpassung der Webseite an die Möglichkeiten des Browsers und verbessert somit die Performance der Webseite. Durch die progressive Verbesserung wird die Kompatibilität mit verschiedenen Browsern gewährleistet.

Wie funktioniert Hijax?

Hijax überprüft, inwieweit der Browser JavaScript unterstützt und welche Möglichkeiten er abbilden kann. Basierend auf dieser Information passt Hijax die Funktionalität der Webseite an und bietet alternative Lösungen, um die Kompatibilität sicherzustellen.

Bildnachweis: iStock.com/traffic_analyzer


Zurück zur Hauptseite: h
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.