TRACE

Metoda HTTP

Specifikacija metode HTTP TRACE

Metoda TRACE zahteva oddaljeno povratno zanko sporočila zahteve na ravni aplikacije. Končni prejemnik zahtevka MORA prejeto sporočilo, razen nekaterih spodaj opisanih polj, odražati nazaj odjemalcu kot telo sporočila v odgovoru 200 (OK) s Content-Type "message/http" (oddelek 8.3.1 [RFC7230]). Končni prejemnik je bodisi izvorni strežnik bodisi prvi strežnik, ki je v zahtevi prejel vrednost Max-Forwards, enako nič (0) (razdelek 5.1.2). Odjemalec v zahtevi TRACE NE MORE ustvariti polj glave, ki vsebujejo občutljive podatke, ki bi se lahko razkrili v odgovoru. Na primer, neumno bi bilo, če bi uporabniški agent v zahtevi TRACE poslal shranjene uporabniške poverilnice [RFC7235] ali piškotke [RFC6265]. Končni prejemnik zahteve JE PRAVILNO izključiti vsa polja glave zahteve, ki bi lahko vsebovala občutljive podatke, ko ta prejemnik ustvari telo odgovora.

TRACE odjemalcu omogoča, da vidi, kaj se prejme na drugem koncu verige zahteve, in te podatke uporabi za testiranje ali diagnostične informacije. Vrednost naslovnega polja Via (oddelek 5.7.1 [RFC7230]) je še posebej zanimiva, saj deluje kot sled verige zahtevkov. Uporaba polja glave Max-Forwards odjemalcu omogoča, da omeji dolžino verige zahtevkov, kar je uporabno za testiranje verige posrednikov, ki posredujejo sporočila v neskončni zanki.

Odjemalec v zahtevi TRACE NE MORE poslati telesa sporočila.

Odgovorov na metodo TRACE ni mogoče shraniti v predpomnilnik.

Metodo HTTP TRACE sta v oddelku 4.3.8 dokumenta RFC 7231 določila projektna skupina za internetno inženirstvo (IETF) in konzorcij za svetovni splet (W3C).

Opis metode TRACE

delo v teku

Primer za metodo HTTP 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