Moin!
Ich möchte meine Seite WAP faähig machen. Deswegen möchte ich gerne wissen, wie ich bei der GET Anfrage des Browser den Content-Type der angefragt wird herausbekomme (um zu unterscheiden ob es sich um einen WML oder HTML Browser handelt). Mit JSP ist sowas ganz einfach, mit PHP müsste das doch sicherlich auch gehen.
Um mal pedantisch zu antworten: Den wirklich angeforderten Content-Type wirst du nie herausfinden können. Der Client hat nämlich keine Ahnung, welcher Content-Type sich hinter einer anzufordernden URL verbirgt.
Wie aber korrekt geantwortet wurde, sendet der Client eine Liste von Content-Typen, die er bevorzugt, und möglicherweise auch, in welcher Priorität.
Bedenke auch, dass du es unter Umständen mit hybriden Clients zu tun bekommst, welche sowohl HTML als auch WML darstellen können und dies möglicherweise sogar im Header kundtun. Oder eben auch nicht (so wie Opera z.B.).
Bedenke überdies, dass es nicht unbedingt nur Vorteile bietet, denselben Content unter _einer_ URL zu verstecken, die sich je nach Client mal so, mal anders verhält. Insbesondere Proxys haben damit so ihre Probleme, wenn sie die erste Anfrage z.B. für einen HTML-Client vornehmen und dann dieselbe URL für einen WML-Client abfragen sollen. Du müßtest also in deiner Antwort noch entsprechende "Vary"-Headerangaben mitsenden, um wirklich 100% genau zu arbeiten.
Da dürfte es doch unter Umständen schlauer sein, einfach in der URL die Unterscheidung durchzuführen, und das dann serverseitig auseinanderzupfriemeln. Es müssen dazu _nicht_ alle Skripte doppelt vorhanden sein, URL-Rewriting hilft auch.
- Sven Rautenberg
Signatur oder nicht Signatur - das ist hier die Frage!