6.1 Arten von Überschriften
Die HTTP-Anforderungsheader sind eigentlich Dienstinformationen für den http-Client und den http-Server. Aber es ist sehr wichtig, und wenn Sie sie überhaupt nicht verstehen, wird es für Sie oft schiefgehen. Lesen Sie also zumindest etwas darüber.
Alle http-Header können in 4 Hauptgruppen unterteilt werden:
# | Header-Typ | Beschreibung | Notiz |
---|---|---|---|
1 | Allgemeine Überschriften | Allgemeine Überschriften | Wird in Anfragen und Antworten verwendet |
2 | Header anfordern | Header anfordern | Wird nur in Anfragen verwendet |
3 | Antwortheader | Antwortheader | Wird nur in Antworten verwendet |
4 | Entitätsheader | Entitätsheader | Begleiten Sie jede Nachrichtenentität |
6.2 Benutzeragent
Der wichtigste und beliebteste Header ist User-Agent . Dies ist eine spezielle Zeichenfolge, die beschreibt, welcher Client die Anfrage an den Server stellt. Dies ist der Name des Kunden.
Häufig passt der Server seine Antwort leicht an den Anforderer an. Wenn beispielsweise aus der Anfrage klar hervorgeht, dass die Anfrage von einem Mobiltelefonbrowser stammt, kann eine mobile Version der HTML-Seite bereitgestellt werden.
Es ist nicht ungewöhnlich, dass Spambots, Download-Manager und einige Browser gefälschte User-Agent-Strings senden, um sich als legitime Kunden auszugeben. Diese Situation wird als User-Agent-Spoofing oder User-Agent-Spoofing bezeichnet.
Mein User-Agent sieht jetzt zum Beispiel so aus:
Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:99.0) Gecko/20100101 Firefox/99.0
Es enthält Informationen über den Browser, das Betriebssystem und die Web-Engine des Browsers.
6.3 Inhaltstyp
Der zweitbeliebteste Header ist Content-Type . Es wird verwendet, um den MIME-Typ der Ressource zu bestimmen, die der Server bereitstellt.
Schon zu Beginn des Internets wurden die Arten der übertragenen Medieninhalte aus Bequemlichkeitsgründen standardisiert. Sie werden Internet Media Types oder kurz MimeTypes genannt . Sie fallen in 9 Kategorien:
- Anwendung
- Audio-
- Beispiel
- Bild
- Nachricht
- Modell
- mehrteilig
- Text
- Video
Beispiele:
Kategorie | Typ | Beschreibung |
---|---|---|
Audio- | Audio/mp4 | Audiodatei im mp4-Format |
Audio/AAC | AAC-Audiodatei | |
Bild | Bild/Gif | GIF-Bild |
Bild/JPEG | JPEG-Bild | |
Bild/PNG | Bild png | |
Text | Text/CSS | CSS-Datei |
text/html | HTML-Datei | |
Video | Video/mpeg | Videodatei im MPEG-Format |
Video/Webm | Videodatei im Webm-Format | |
Video/3gpp | Videodatei im 3gpp-Format | |
Anwendung | application/x-www-form-urlencoded | Verschlüsselte Daten |
Anwendung/zip | Zip-Archiv | |
Anwendung/Javascript | JavaScript | |
application/xml | XML |
Normalerweise weiß der Server, welche Daten er liefert. Wenn Sie jedoch eine Serverantwort mit Ihrem eigenen Code generieren, müssen Sie den Antworttyp (Content-Type) Ihres Servers angeben.
6.4 Inhaltslänge
Dieser Header gibt die Länge der Antwort des Servers an . Wenn auf einfache Weise, dann die Größe der angegebenen Datei. Sie müssen diese Option nicht manuell festlegen. Obwohl es nützlich sein kann, sich anzusehen, was der Server gegeben hat, wenn aus irgendeinem Grund die Antwort nicht alle kam.
6.5 Kodierung akzeptieren
Mit diesem Header kann der Client dem Server mitteilen, dass er verschiedene Algorithmen zur Inhaltskomprimierung unterstützt . So kann der Server den Inhalt zunächst beispielsweise mit einem Zip-Archiv archivieren, ihn dann an den Client senden und der Client kann den Originalinhalt korrekt wiederherstellen.
Der Vorteil der Archivierung besteht darin, dass die Übertragung umso schneller erfolgt, je kleiner die Datei ist. Nachteile der Archivierung – zusätzliche Belastung des Clients und des Servers. Bei der Übertragung großer Dateien ist eine Archivierung sinnvoll, bei der Übertragung kleinerer Dateien oft nicht.
Ein Beispiel für einen solchen Header:
Accept-Encoding: deflate, gzip;q=1.0, *;q=0.5
Wo deflate
und gzip
sind die unterstützten Datenkomprimierungsalgorithmen und q
gibt den Grad der Komprimierung an.
GO TO FULL VERSION