TRACE
HTTP Methode
Spezifikation von der HTTP Methode TRACE
Die TRACE-Methode fordert eine Remote-Rückschleifung der Anforderungsnachricht auf Anwendungsebene an. Der Endempfänger der Anfrage SOLLTE die empfangene Nachricht mit Ausnahme einiger unten beschriebener Felder als Nachrichtentext einer 200 (OK)-Antwort mit einem Content-Type von "message/http" (Abschnitt 8.3.1 von [RFC7230]) an den Client zurücksenden. Der endgültige Empfänger ist entweder der Ursprungsserver oder der erste Server, der einen Max-Forwards-Wert von Null (0) in der Anfrage erhält (Abschnitt 5.1.2). Ein Client MUSS KEINE Header-Felder in einer TRACE-Anfrage erzeugen, die sensible Daten enthalten, die durch die Antwort offengelegt werden könnten. Zum Beispiel wäre es töricht, wenn ein User Agent gespeicherte Benutzerdaten [RFC7235] oder Cookies [RFC6265] in einer TRACE-Anfrage senden würde. Der Endempfänger der Anfrage SOLLTE alle Request-Header-Felder ausschließen, die wahrscheinlich sensible Daten enthalten, wenn dieser Empfänger den Response-Body generiert.
TRACE erlaubt es dem Client zu sehen, was am anderen Ende der Anfragekette empfangen wird und diese Daten für Tests oder Diagnoseinformationen zu verwenden. Der Wert des Via-Header-Feldes (Abschnitt 5.7.1 von [RFC7230]) ist von besonderem Interesse, da er als Trace der Anforderungskette dient. Die Verwendung des Max-Forwards-Header-Feldes erlaubt es dem Client, die Länge der Anfragekette zu begrenzen, was nützlich ist, um eine Kette von Proxies zu testen, die Nachrichten in einer Endlosschleife weiterleiten.
Ein Client MUSS KEINEN Nachrichtentext in einer TRACE-Anfrage senden.
Antworten auf die TRACE-Methode sind nicht cachefähig.
Beschreibung der Methode TRACE
Beispiel für die HTTP Methode TRACE
TRACE /data HTTP/1.1
Host: api.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)Chrome/58.0.3029.110 Safari/537
Accept-Language: de-DE,de;q=0.5
Connection: keep-alive
Content-Type: message/http
Date: Mon, 31 July 2023 14:58:12 GMT
Server: Apache/2.4.7 (Ubuntu)
Cache-Control: no-cache
Response body (echoed request):
TRACE /data HTTP/1.1
Host: api.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)Chrome/58.0.3029.110 Safari/537
Accept-Language: de-DE,de;q=0.5
Connection: keep-alive