TRACE

HTTP-metode

Spesifikasjon av HTTP-metoden TRACE

Trace-metoden ber om en ekstern, applikasjonsnivå loop-back av forespørselsmeldingen. Den endelige mottakeren av forespørselen BØR reflektere den mottatte meldingen, unntatt noen felt som er beskrevet nedenfor, tilbake til klienten som meldingsteksten i et 200 (OK)-svar med en Content-Type av typen "message/http" (avsnitt 8.3.1 i [RFC7230]). Den endelige mottakeren er enten opprinnelsesserveren eller den første serveren som mottar en Max-Forwards-verdi på null (0) i forespørselen (avsnitt 5.1.2). En klient MÅ IKKE generere topptekstfelt i en TRACE-forespørsel som inneholder sensitive data som kan bli avslørt av svaret. Det ville for eksempel være tåpelig for en brukeragent å sende lagret brukerlegitimasjon [RFC7235] eller informasjonskapsler [RFC6265] i en TRACE-forespørsel. Den endelige mottakeren av forespørselen BØR ekskludere alle forespørselshodefelt som sannsynligvis inneholder sensitive data, når mottakeren genererer svarteksten.

TRACE gjør det mulig for klienten å se hva som mottas i den andre enden av forespørselskjeden, og bruke disse dataene til testing eller diagnostisk informasjon. Verdien av Via-overskriftsfeltet (avsnitt 5.7.1 i [RFC7230]) er av spesiell interesse, siden det fungerer som en sporing av forespørselskjeden. Ved å bruke topptekstfeltet Max-Forwards kan klienten begrense lengden på forespørselskjeden, noe som er nyttig for å teste en kjede av proxyer som videresender meldinger i en uendelig sløyfe.

En klient MÅ IKKE sende en meldingstekst i en TRACE-forespørsel.

Svar på TRACE-metoden kan ikke lagres i hurtigbufferen.

En klient MÅ IKKE sende en meldingstekst i en TRACE-forespørsel.

HTTP-metode TRACE er spesifisert i avsnitt 4.3.8 i dokument RFC 7231 av Internet Engineering Task Force (IETF) og World Wide Web Consortium (W3C).

Beskrivelse av TRACE-metoden

pågående arbeid

Eksempel for 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