Java Reference
In-Depth Information
Bild 8.15■ Eine Browserkennung wird per User-Agent an den Webserver geschickt, wie ein Snifer
leicht zeigt.
Aber wie erwähnt steht diese Information auch im Client bereits zur Verfügung. Ganz
detailliert stehen die Informationen in navigator.userAgent . Unter anderem können Sie
auch die Eigenschat appName verwenden, um auf leichtere Weise den intern vom Webbrow-
ser gespeicherten Browsernamen abzufragen. Den Wert von navigator.appName können
Sie beispielsweise in einer if -Abfrage testen. Beispiel:
Listing 8.50■ Eine einfache Abfrage, ob der Besucher einen Internet Explorer verwendet oder
nicht
if(navigator.appName=="Microsoft Internet Explorer"){ ... }
else { ... }
Diese Variante prüt explizit auf exakte Übereinstimmung des Werts in appName mit einem
bekannten String. Im Inneren der Blöcke können Sie beispielsweise eine Weiterleitung
notieren (mit der Methode window.open() oder der Eigenschat location.href ) oder
Inhalte dynamisch schreiben.
PrAXISTIPP: Die Identiikationsstrings der populärsten Browser sind weitgehend
bekannt. Der Internet Explorer verwendet zum Beispiel als Wert für navigator.
appName in der Voreinstellung bisher traditionell "Microsoft Internet Explorer" ,
der Firefox, Netscape Navigator, Safari, Chrome und Mozilla "Netscape" und
Opera den Wert "Opera" . Beachten Sie jedoch, dass in einigen Browsern der
Anwender den Wert der Kennung verändern kann. Besonders bemerkenswert ist,
dass der Internet Explorer in der Version 11 sogar von oben besagter Kennung als
"Microsoft Internet Explorer" abweicht und sich auch als "Netscape" aus-
gibt. Da er mittlerweile voll kompatibel zu dem Netscape-Modell und den Vor-
gaben des W3C ist, soll er damit recht ofensichtlich von Browserweichen nicht
mehr in die üblichen Microsot-Sonderlösungen gelotst werden.
Suche nach speziischen Informationen in navigator.appname,
navigator.appVersion und navigator.userAgent
Sie haben gerade gesehen, dass man mit einem reinen Vergleich des Inhalts von
navigator.appName auf einen bekannten String einen Browser innerhalb gewisser Para-
meter identiizieren kann. Nur kann der Inhalt der Eigenschat navigator.appName
nicht zuverlässig garantiert werden und ein exakter Vergleich geht leicht schief. Praxis-
orientierter ist die Prüfung, ob eine bestimmte Zeichenkette im Wert der Eigenschat
navigator.appName oder eine der anderen Identiikationseigenschaten enthalten ist.
Dabei helfen einige String -Methoden wie indexOf() oder search() , womit in dem String
nach dem Vorkommen einer Zeichenkette gesucht wird und nicht unbedingte Gleichheit
 
Search WWH ::




Custom Search