WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   Browsererkennung (http://www.wcm.at/forum/showthread.php?t=113555)

gerngroh 27.10.2003 20:30

Browsererkennung
 
Hallo!

Ich arbeite grad an einer Java-Webapp und muss dabei unbedingt verhindern, dass Leute die Seite mit Browsern ansprechen die kein <iframe/> und kein disabled-Attribut verstehen.
(hauptsächlich NS 4.x)

Ich glaub man kann ja aus dem Header des Requests den verwendeten Browser auslesen.

Somit könnte ich NS 4 sehr einfach ausschließen.

Gibts vielleicht auch eine Möglichkeit mit der ich abfragen kann ob der Browser bestimmte Funkionen unterstützt, sprich ich möchte nicht dezitiert sagen kein NS4 sondern alle Browser welche die benötigten Features mitbringen dürfen und die anderen nicht.

Das ganze muss natürlich Serverseitig realisiert werden, auf JS kann ich mich nicht verlassen

Bin für jeden Tipp dankbar.
Tschüss

Sesa_Mina 27.10.2003 21:32

hast dir schon mal den http get request angeschaut wie der aufgebaut ist?

Da wird ja einiges an Information mitgeschickt wenn der browser eine Seite oder ein Bild oder was auch immer anfordert.

sagi 27.10.2003 22:00

Zitat:

Gibts vielleicht auch eine Moeglichkeit mit der ich abfragen kann ob der Browser bestimmte Funkionen unterstuetzt
nein.

ich ich empfehle dir einen anderen Weg: lass die iframes weg und verwende divs... du kannst ohne viel aufwand konvertieren und ersparst dir (und den Usern mit Browsern, die iframes nicht koennen) den ganzen Aufwand.

mfg

c.

gerngroh 28.10.2003 20:12

Der Grund für die iframes liegt darin, dass ich damit diverse Teile meiner Seite (hauptsächlich Auflistungen in Form von Tabellen) sehr schön von der Hauptseite weg in eine andere Struts-Action-Klasse auslagern kann und die Haupseite dadurch übersichtlicher wird.

Zuerst wird die Hauptseite geladen, und <iframe> sendet dann einen weiteren Requset und lädt die Listen-Anzeige in sein Fenster.

Ich hab auch schon vor längerer Zeit versucht Seiten-Fragmente mittels <jsp:include/> einzubinden, das funktioniert aber soweit ich micht erinnern kann nur wenn man JSP-Seiten einbindet, nicht aber mit Struts-Actions.

Mit dem Tiles-Framework von Struts hab ich mich auch schon ein Bisschen auseinander gesetzt, das ist ja eingentlich für solche Sachen gedacht, nur leider hab ich damit auch noch einige Probleme wenn ich ein Struts-Action in eine JSP einbinden will.

Mit <iframe> läufts einfach am Besten, leider auf Kosten der Plattformunabhängigkeit.

Weiters baut meine Seite auch darauf auf dass gewisse Formular-Elemente (Buttons) deaktiviert sind und auch das unterstützt der NS 4 leider nicht.

Ich bin zwar meistens sehr drauf bedacht dass meine Sites auf möglichst vielen Browsern laufen (bin selber leidenschaftlicher Linuxer) aber in dem Fall führt glaub ich kein Weg an einem Ausschluß der älteren Browser-Generation vorbei.

jak 28.10.2003 22:27

Wie weiter oben schon geschrieben wurde: der get-request header liefert ein Feld user-agent mit. Wenn du das auswertest kannst du ältere Browser abweisen (gemäß RFC 2616.

Zitat:

The User-Agent request-header field contains information about the user agent originating the request. This is for statistical purposes, the tracing of protocol violations, and automated recognition of user agents for the sake of tailoring responses to avoid particular user agent limitations. User agents SHOULD include this field with requests. The field can contain multiple product tokens (section 3.8) and comments identifying the agent and any subproducts which form a significant part of the user agent. By convention, the product tokens are listed in order of their significance for identifying the application.

User-Agent = "User-Agent" ":" 1*( product | comment )

Example:

User-Agent: CERN-LineMode/2.15 libwww/2.17b3


Alle Zeitangaben in WEZ +2. Es ist jetzt 08:34 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag