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

Digitale Produkte „cyberfit“ machen

Vernetzte Produkte müssen laut Cyber Resilience Act über Möglichkeiten zur Datenverschlüsselung und Zugangsverwaltung verfügen.

4 Tagen ago

Google schließt schwerwiegende Sicherheitslücken in Chrome 131

Das jüngste Update für Windows, macOS und Linux stopft drei Löcher. Eine Anfälligkeit setzt Nutzer…

4 Tagen ago

Apple schließt Zero-Day-Lücken in iOS, iPadOS und macOS

Zwei von Google-Mitarbeitern entdeckte Schwachstellen werden bereits aktiv gegen Mac-Systeme mit Intel-Prozessoren eingesetzt. Sie erlauben…

4 Tagen ago

Gefährliche Anzeigen für Passwortmanager Bitwarden verbreiten Malware

Die Hintermänner haben es unter anderem auf Daten von Facebook-Geschäftskonten abgesehen. Opfer werden über angebliche…

5 Tagen ago

Public Cloud: Gartner erwartet 2025 weltweite Ausgaben von 723 Milliarden Dollar

Bis 2027 werden 90 Prozent der Unternehmen eine Hybrid-Cloud-Strategie umsetzen.

5 Tagen ago

iPhone 15 ist bestverkauftes Smartphone im dritten Quartal

Apple belegt in der Statistik von Counterpoint die ersten drei Plätze. Samsungs Galaxy S24 schafft…

5 Tagen ago