HEAD
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 Methode GET
verwendet worden wäre. Diese Methode kann in Fällen genutzt werden, in denen eine URL einen großen Download erzeugen könnte. Ein HEAD
-Request kann beispielsweise den Content-Length
-Header lesen, um die Dateigröße zu prüfen, bevor die Datei mit einem GET
heruntergeladen wird.
Wenn die Antwort auf einen HEAD
-Request zeigt, dass eine zwischengespeicherte URL-Antwort jetzt veraltet ist, wird die zwischengespeicherte Kopie ungültig, selbst wenn kein GET
-Request gemacht wurde.
Warnung:
Wenn eine Antwort auf einen HEAD
-Request einen Body hat, muss der Antwort-Body ignoriert werden.
Alle Repräsentations-Header, die den fehlerhaften Body beschreiben, werden als Beschreibung des Antwort-Bodys angenommen, den ein GET
-Request erhalten hätte.
Anfrage hat Body | Nein |
---|---|
Erfolgreiche Antwort hat Body | Nein |
Sicher | Ja |
Idempotent | Ja |
Cache-fähig | 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 im
Host
-Header bereitgestellten Informationen 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 Proxys (z.B.http://www.example.com/path/to/file.html
). <query>
Optional-
Ein optionaler Query-Komponente, der von einem Fragezeichen
?
eingeleitet wird. Häufig verwendet, um identifizierende Informationen in Form vonkey=value
-Paaren zu tragen.
Beispiele
Erfolgreiches Abrufen von Ressourcen-Metadaten
Der folgende curl
-Befehl erstellt einen HEAD
-Request für example.com
:
curl --head example.com
Dies entspricht einem GET
-Request, außer dass der Server im Antwort-Body keine Nachricht einschließen sollte.
Er erstellt eine HTTP-Anfrage, die folgendermaßen 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.
Diese Antwort ist im Wesentlichen Metadaten, die die Ressource beschreiben, anstatt der Ressource selbst (einige Caching-Header sind in diesem Beispiel der Übersichtlichkeit 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 |
Browser-Kompatibilität
BCD tables only load in the browser