TRACE
HTTP-metod
Specifikation av HTTP-metoden TRACE
Metoden TRACE begär en fjärrstyrd loop-back på applikationsnivå av begärans meddelande. Den slutliga mottagaren av begäran SKA återge det mottagna meddelandet, exklusive vissa fält som beskrivs nedan, tillbaka till klienten som meddelandekroppen i ett 200 (OK)-svar med en Content-Type av "message/http" (avsnitt 8.3.1 i [RFC7230]). Den slutliga mottagaren är antingen ursprungsservern eller den första server som får ett Max-Forwards-värde på noll (0) i begäran (avsnitt 5.1.2). En klient MÅSTE INTE generera rubrikfält i en TRACE-begäran som innehåller känsliga data som kan avslöjas av svaret. Det vore t.ex. dumt av en användaragent att skicka lagrade användaruppgifter [RFC7235] eller cookies [RFC6265] i en TRACE-begäran. Den slutliga mottagaren av begäran BÖR utesluta alla fält i begäran som sannolikt innehåller känsliga data när den mottagaren genererar svarskroppen
TRACE gör det möjligt för klienten att se vad som tas emot i andra änden av begäran och använda dessa data för testning eller diagnostisk information. Värdet på Via-huvudfältet (avsnitt 5.7.1 i [RFC7230]) är av särskilt intresse eftersom det fungerar som ett spår av förfrågningskedjan. Genom att använda huvudfältet Max-Forwards kan klienten begränsa längden på begärandekedjan, vilket är användbart för att testa en kedja av proxyservrar som vidarebefordrar meddelanden i en oändlig slinga.
En klient får INTE skicka en meddelandekropp i en TRACE-begäran.
Svar på TRACE-metoden kan inte cachas.
<Beskrivning av TRACE-metoden
Exempel för HTTP-metoden 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