TRACE request method
Die TRACE HTTP-Methode führt einen Meldungsrückschlaufe-Test entlang des Pfads zur Zielressource durch.
Der endgültige Empfänger der Anfrage sollte die empfangene Nachricht (ohne Felder, die sensible Daten enthalten könnten) als Nachrichtenkörper einer 200 OK-Antwort mit einem Content-Type von message/http an den Client zurückspiegeln. Der endgültige Empfänger ist entweder der Ursprungsserver oder der erste Server, der einen Max-Forwards Wert von 0 in der Anfrage erhält.
Der Client darf im Rahmen der Anfrage keine Inhalte senden oder Header erzeugen, die sensible Daten wie Benutzeranmeldedaten oder Cookies enthalten könnten. Nicht alle Server implementieren die TRACE-Methode, und einige Serverbesitzer haben die Verwendung der TRACE-Methode aus Sicherheitsgründen historisch untersagt. In solchen Fällen wird ein 405 Method Not Allowed Client-Fehlerantwort gesendet.
| Anfrage hat einen Body | Nein |
|---|---|
| Erfolgreiche Antwort hat einen Body | Ja |
| Sicher | Ja |
| Idempotent | Ja |
| Cachefähig | Nein |
| In HTML-Formularen erlaubt | Nein |
Syntax
TRACE <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) bei Anfragen an einen Ursprungsserver und eine absolute URL bei Anfragen an Proxys (z.B.http://www.example.com/path/to/file.html). <query>Optional-
Eine optionale Abfragekomponente, der ein Fragezeichen
?vorangestellt ist. Wird oft verwendet, um identifizierende Informationen in Form vonkey=valuePaaren zu übermitteln.
Beispiele
>Erfolgreiche TRACE-Anfrage
Eine TRACE-Anfrage kann mit curl ausgeführt werden:
curl -v -X TRACE example.com
Dies erzeugt die folgende HTTP-Anfrage:
TRACE / HTTP/1.1
Host: example.com
User-Agent: curl/8.7.1
Accept: */*
Eine 200 OK-Antwort mit den Anforderungsheadern im Antwortkörper wird an den Client zurückgesandt:
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
| Spezifikation |
|---|
| HTTP Semantics> # TRACE> |
Browser-Kompatibilität
Der Browser verwendet die TRACE-Methode nicht für benutzerinitiierte Aktionen, daher gilt "Browser-Kompatibilität" hier nicht.