Wie man aus HTTP-Headern das meiste herausholt

Mittels Web-Programmierung können Header-Daten grundsätzlich auf zwei Arten angefordert werden: mit Hilfe des Client-Browsers oder mit Hilfe des Web-Servers. Auf der Client-Seite erhalten Sie mit JavaScript Zugang zu den Header-Daten über die Navigator- und Document-Objekte.

Mit dem Navigator-Objekt können Header-Details wie die Bezeichnung und Version des Browsers und der Plattform abgefragt werden. Über die Eigenschaft „Navigator.userAgent“ erhält man beispielsweise den Wert des User-Agent Request-Headers, der in den Client-Packets übermittelt wird.

Das Document-Objekt hat nützliche Eigenschaften zum Abrufen von Response-Header-Daten wie Domäne, Zeichensatz und Speicherort einer Webseite. Auch der Response-Header „Referrer“ kann beispielsweise über die Eigenschaft „document.referrer“ festgestellt werden. JavaScript hat übrigens nicht nur Eigenschaften, die sich auf Header-Daten beziehen, sondern kann auch zusätzliche Browser-spezifische Informationen liefern, auf die innerhalb der JavaScript-Anwendung zugegriffen werden kann. Jedes gute JavaScript-Handbuch sollte eine Verzeichnis aller verfügbaren Eigenschaften für diese und andere Objekte enthalten.

Listing A zeigt eine einfache JavaScript Anwendung, die Entity-Header-Daten nutzt – das heißt Daten, die sich direkt auf Eigenschaften eines Dokuments beziehen, das per Response oder Request übermittelt wurde.

Das Programm erfasst einfach den Request-Header und druckt dann eine personalisierte Begrüßung in der Sprache des Benutzers aus, die auf den Einstellungen für „Accept-Language“ und benutzerspezifischen Objekten innerhalb des Client-Browsers basiert. Wenn ein Benutzer zum Beispiel einen japanischen Client-Browser hat, wird er auf Japanisch begrüßt.

Auf die Header-Informationen kann mit einfachen serverseitigen Scripts zugegriffen werden. Mit Active Server Pages (ASP) erfolgt der Zugriff auf Request- und Response-Headers mit Hilfe der Request.ServerVariables-Collektion.

Durch die Anwendung der spezifischen Referenzmethoden in den jeweiligen Serversprachen kann auf fast alle Header zugegriffen werden, die in den HTTP-Protokollspezifikationen beschrieben sind. Unter ASP rufen Sie den User-Agent des Browsers mit dem folgenden Code ab:

So können Sie auf einfache Weise ein Programm erstellen, mit dem Sie feststellen können, ob ein User einen Text-Mode-Browser hat, um ihn dann zu einer geeigneten Seite ihrer Site zu schicken. Listing B gibt Ihnen ein Beispiel dieser Technik.

Wenn Sie verstehen wie Header funktionieren, können Sie interessantere und effektivere Webanwendungen erstellen. Falls Sie Interesse haben, mehr darüber zu lernen, sollten Sie W3C besuchen, wo Sie vollständige Informationen über WWW-Standards, Protokolle und Spezifikationen finden.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

Solita and Stibo Systems werden Partner

Mit ihrer Zusammenarbeit unterstützen Solita und Stibo Systems Unternehmen bei der Umsetzung agiler und geschäftsorientierter…

4 Tagen ago

Firefox 130 integriert Firefox Labs

Firefox Labs bietet einfachen Zugriff auf neue experimentelle Funktionen. Zum Start lassen sich Chatbots wie…

4 Tagen ago

Ransomware: Kaspersky entdeckt mehr als 4000 neue Varianten im zweiten Quartal

Die Zahl der neu entdeckten Varianten steigt um 132 Prozent gegenüber dem Vorjahr. Die aktivste…

5 Tagen ago

Hacker lassen fahrerlose Autos „verschwinden“

Cyber-Kriminelle können Millimeterwellenradar für Versicherungsbetrügereien gezielt überlisten.

5 Tagen ago

Google beseitigt Sicherheitslücken in Chrome 128

Vier Anfälligkeiten erlauben unter Umständen das Einschleusen und Ausführen von Schadcode aus der Ferne. Angreifbar…

5 Tagen ago

Bericht: Intel plant weitere Maßnahmen zur Kostensenkung

Unter anderem steht wohl der Neubau einer Chipfabrik in Magdeburg vor dem Aus. Intel soll…

6 Tagen ago