WikiDer > Browser-Sniffing

Browser sniffing

Browser-Sniffing ist die Bestimmung der verwendeten Webbrowser und eine Reihe weiterer Funktionen, wie z. B. Bildschirmgröße, in a Website. Dies ist manchmal notwendig, weil unterschiedliche Webbrowser unterschiedlich mit Stil und Layout und interaktiven Elementen in der HTML-Code. Grundsätzlich sollte sich jeder Browser an die W3CSpezifikationen, aber in der Praxis erfüllt kein Browser sie zu 100%.

Nur die . verwenden User-Agent liefert unzureichende und unpraktische Informationen. Daher werden zusätzliche Tests durchgeführt, in der Regel auf die Fähigkeiten von Javascript. Ein bekanntes Beispiel ist a Browserfähigkeitstest, mit dem beispielsweise erkannt werden kann, ob der aktuelle Browser Internet Explorer ist:

varisIE;wenn(Dokument.alle){// Browser ist eine Version von Internet ExplorerisIE=wahr;}sonst{// Browser ist nicht Internet ExplorerisIE=falsch;}

Das Ergebnis von Browser-Sniffing ist eine Reihe von Variablen, die jeweils einen anderen Aspekt des verwendeten Browsers darstellen. Häufig verwendete Variablen sind zum Beispiel:

  • isIE (gibt an, ob der Browser eine Version des Internet Explorers ist)
  • isNN (gibt an, ob der Browser eine Version von Netscape-Navigator ist)
  • iMainVersion (Hauptbrowserversion)

Das Ergebnis einiger Tests kann dann sein, dass es sich bei dem verwendeten Browser beispielsweise um den Internet Explorer Version 5 oder Netscape Version 6 handelt. Ist dies bekannt, kann dem Nutzer eine an die Fähigkeiten des Browsers angepasste Seite präsentiert werden . Oft wird der Benutzer dann auf eine andere Seite weitergeleitet, die speziell für diesen Browser erstellt wurde.

Es gibt eine große Anzahl von Skripten für Browser-Sniffing auf der Internet finden.

Serverseitiges Sniffing

Das obige Beispiel verwendet clientseitiges Sniffing. Das bedeutet, dass der Code, um zu bestimmen, um welchen Browser es sich handelt, im Browser selbst ausgeführt wird.

Es ist auch möglich, Webserver Auf Browser-Sniffing zu tun, denn wenn der Browser auffordert, eine Seite anzuzeigen (http-Anfrage), sendet selbst seinen User-Agent. Auf dem Server, basierend auf dem Wert des BenutzersAgent bestimmt, um welchen Browser es sich handelt.

Einschränkungen

Browser-Sniffing ist bestenfalls eine ergänzende Methode, um die Fähigkeiten des Browsers zu bestimmen. Es gibt noch Webseiten die davon ausgehen, dass es nur zwei Browser gibt: Internet Explorer und Netscape. Wenn der Benutzer beispielsweise einen anderen Browser verwendet Oper, Safari oder Mozilla Firefox, dann ist keine spezielle Seite verfügbar und es wird nichts oder eine sehr einfache Seite angezeigt. Dies ist die logische Konsequenz daraus, dass mit Browser-Sniffing es können nur aktuell existierende Browser berücksichtigt werden, zukünftige Browser können nicht berücksichtigt werden.

Alternative

Die beste Alternative für Browser-Sniffing testet nur, ob die in der Webseite verwendeten Funktionen im Browser vorhanden sind (das macht den Test unabhängig davon, ob der Browser bekannt ist oder nicht). Ein einfaches (und sehr altes) Beispiel hierfür ist die Verwendung von Rollovern (die ein anderes Bild anzeigen, wenn der Benutzer mit seinem Maus verweist auf einen Menüpunkt). Es gab damals Browser, die das nicht unterstützten und stattdessen einen Fehler ausgaben.

Diese Methode hat auch Nachteile, einige Browser bestehen den Test, unterstützen aber die auszuführenden Aktionen nicht. Von diesem Mangel sind besonders Browser betroffen, die sich noch in der Entwicklung befinden. Außerdem gilt diese Methode nur für interaktive Elemente, eine falsche Interpretation von C.S.S lässt sich damit nicht nachvollziehen.

Externe Links