HEAD request method
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Die HEAD
HTTP-Methode fordert die Metadaten einer Ressource in Form von Headern an, die der Server gesendet hätte, wenn die GET
-Methode verwendet worden wäre. Diese Methode kann in Fällen eingesetzt werden, in denen eine URL möglicherweise einen großen Download erzeugen würde; zum Beispiel kann eine HEAD
-Anfrage den Content-Length
-Header lesen, um die Dateigröße zu überprüfen, bevor die Datei mit einem GET
heruntergeladen wird.
Wenn die Antwort auf eine HEAD
-Anfrage zeigt, dass eine zwischengespeicherte URL-Antwort nun veraltet ist, wird die zwischengespeicherte Kopie ungültig gemacht, selbst wenn keine GET
-Anfrage durchgeführt wurde.
Warnung:
Wenn eine Antwort auf eine HEAD
-Anfrage einen Körper hat, muss der Antwortkörper ignoriert werden.
Alle Repräsentations-Header, die den fehlerhaften Körper beschreiben, gelten als Beschreibung des Antwortkörpers, den eine GET
-Anfrage erhalten hätte.
Anfrage hat einen Körper | Nein |
---|---|
Erfolgreiche Antwort hat einen Körper | Nein |
Sicher | Ja |
Idempotent | Ja |
Cacheable | Ja |
Erlaubt in HTML-Formularen | Nein |
Syntax
HEAD <request-target>["?"<query>] HTTP/1.1
<request-target>
-
Identifiziert die Zielressource der Anfrage, wenn sie mit den Informationen im
Host
-Header kombiniert wird. Dies ist ein absoluter Pfad (z.B.,/path/to/file.html
) in Anfragen an einen Ursprungsserver und eine absolute URL in Anfragen an Proxies (z.B.,http://www.example.com/path/to/file.html
). <query>
Optional-
Eine optionale Abfragekomponente, die durch ein Fragezeichen
?
vorangestellt wird. Wird häufig verwendet, um Identifikationsinformationen in Form vonkey=value
-Paaren zu transportieren.
Beispiele
Erfolgreiches Abrufen von Ressourcen-Metadaten
Der folgende curl
-Befehl erstellt eine HEAD
-Anfrage für example.com
:
curl --head example.com
Dies entspricht einer GET
-Anfrage, außer dass der Server keinen Nachrichtenkörper in die Antwort aufnehmen sollte.
Es erstellt eine HTTP-Anfrage, die so aussieht:
HEAD / HTTP/1.1
Host: example.com
User-Agent: curl/8.6.0
Accept: */*
Der Server sendet eine 200 OK
-Antwort zurück, die nur aus Headern besteht.
Die Antwort ist im Wesentlichen Metadaten, die die Ressource beschreiben, anstatt die Ressource selbst (einige Caching- Header sind in diesem Beispiel der Kürze halber weggelassen):
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Date: Wed, 04 Sep 2024 10:33:11 GMT
Content-Length: 1234567
Spezifikationen
Specification |
---|
HTTP Semantics # HEAD |