TRACE

HTTP-metode

Specifikation af HTTP-metoden TRACE

Trace-metoden anmoder om en ekstern loop-back på applikationsniveau af anmodningsmeddelelsen. Den endelige modtager af anmodningen BØR afspejle den modtagne meddelelse, undtagen nogle felter beskrevet nedenfor, tilbage til klienten som meddelelsesteksten i et 200 (OK)-svar med en Content-Type på "message/http" (afsnit 8.3.1 i [RFC7230]). Den endelige modtager er enten den oprindelige server eller den første server, der modtager en Max-Forwards-værdi på nul (0) i anmodningen (afsnit 5.1.2). En klient MÅ IKKE generere headerfelter i en TRACE-anmodning, der indeholder følsomme data, som kan blive afsløret af svaret. Det ville f.eks. være tåbeligt for en brugeragent at sende gemte brugeroplysninger [RFC7235] eller cookies [RFC6265] i en TRACE-anmodning. Den endelige modtager af anmodningen BØR udelukke alle anmodningsheaderfelter, der sandsynligvis indeholder følsomme data, når denne modtager genererer svarteksten.

TRACE giver klienten mulighed for at se, hvad der modtages i den anden ende af anmodningskæden, og bruge disse data til test eller diagnostiske oplysninger. Værdien af Via-headerfeltet (afsnit 5.7.1 i [RFC7230]) er af særlig interesse, da det fungerer som et spor af anmodningskæden. Brug af headerfeltet Max-Forwards gør det muligt for klienten at begrænse længden af anmodningskæden, hvilket er nyttigt til at teste en kæde af proxyer, der videresender meddelelser i en uendelig løkke.

En klient MÅ IKKE sende en meddelelsestekst i en TRACE-anmodning.

Svar på TRACE-metoden kan ikke caches.

HTTP-metode TRACE er blevet specificeret i afsnit 4.3.8 i dokument RFC 7231 af Internet Engineering Task Force (IETF) og World Wide Web Consortium (W3C).

Beskrivelse af TRACE-metoden

igangværende arbejde

Eksempel på HTTP-metoden TRACE

Request header:
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
Response header:
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