TRACE request method

Die TRACE HTTP-Methode führt einen Nachrichtenrückschlaufe-Test entlang des Pfades zur Zielressource aus.

Der endgültige Empfänger der Anfrage sollte die empfangene Nachricht (ohne Felder, die sensible Daten enthalten könnten) als Nachrichtentext einer 200 OK-Antwort mit einem Content-Type von message/http an den Client zurückgeben. Der endgültige Empfänger ist entweder der Ursprungserver oder der erste Server, der einen Max-Forwards-Wert von 0 in der Anfrage erhält.

Der Client darf keinen Inhalt in der Anfrage senden oder Header generieren, die sensible Daten wie Benutzeranmeldeinformationen oder Cookies enthalten könnten. Nicht alle Server implementieren die TRACE-Methode und einige Serverbetreiber haben historisch die Verwendung der TRACE-Methode aufgrund von Sicherheitsbedenken verboten. In solchen Fällen wird eine 405 Method Not Allowed Client-Fehlerantwort gesendet.

Anfrage hat einen Textkörper Nein
Erfolgreiche Antwort hat einen Textkörper Ja
Sicher Ja
Idempotent Ja
Cache-fähig Nein
Erlaubt in HTML-Formularen Nein

Syntax

http
TRACE <request-target>["?"<query>] HTTP/1.1
<request-target>

Identifiziert die Zielressource der Anfrage in Kombination mit den Informationen, die im Host-Header bereitgestellt werden. Dies ist ein absoluter Pfad (z. B. /path/to/file.html) bei Anfragen an einen Ursprungserver und eine absolute URL bei Anfragen an Proxys (z. B. http://www.example.com/path/to/file.html).

<query> Optional

Eine optionale Abfragekomponente, die von einem Fragezeichen ? eingeführt wird. Wird häufig verwendet, um identifizierende Informationen in Form von key=value-Paaren zu übertragen.

Beispiele

Erfolgreiche TRACE-Anfrage

Eine TRACE-Anfrage kann mit curl durchgeführt werden:

bash
curl -v -X TRACE example.com

Dies erzeugt die folgende HTTP-Anfrage:

http
TRACE / HTTP/1.1
Host: example.com
User-Agent: curl/8.7.1
Accept: */*

Eine 200 OK-Antwort mit den Anfrage-Headern, die im Antworttext enthalten sind, wird zurück an den Client gesendet:

http
HTTP/1.1 200 OK
Content-Length: 123
Date: Wed, 04 Sep 2024 11:50:24 GMT
Server: Apache/2.4.59 (Unix)
Content-Type: message/http

TRACE / HTTP/1.1
Host: example.com
User-Agent: curl/8.7.1
Accept: */*

Spezifikationen

Specification
HTTP Semantics
# TRACE

Browser-Kompatibilität

Der Browser verwendet die TRACE-Methode nicht für vom Benutzer initiierte Aktionen, daher ist "Browser-Kompatibilität" nicht zutreffend.

Siehe auch