TRACE

Metóda HTTP

Špecifikácia metódy HTTP TRACE

Metóda TRACE požaduje vzdialené spätné zobrazenie správy o požiadavke na úrovni aplikácie. Konečný príjemca žiadosti MUSÍ premietnuť prijatú správu s výnimkou niektorých polí opísaných nižšie späť klientovi ako telo správy v odpovedi 200 (OK) s typom obsahu "message/http" (časť 8.3.1 [RFC7230]). Konečným príjemcom je buď pôvodný server, alebo prvý server, ktorý v požiadavke dostal hodnotu Max-Forwards nula (0) (časť 5.1.2). Klient NESMIE v požiadavke TRACE vytvárať polia hlavičky obsahujúce citlivé údaje, ktoré by mohli byť zverejnené v odpovedi. Bolo by napríklad hlúpe, keby používateľský agent v požiadavke TRACE odoslal uložené poverenia používateľa [RFC7235] alebo súbory cookie [RFC6265]. Konečný príjemca požiadavky MUSÍ pri generovaní tela odpovede vylúčiť všetky polia hlavičky požiadavky, ktoré by mohli obsahovať citlivé údaje.

TRACE umožňuje klientovi vidieť, čo sa prijíma na druhom konci reťazca požiadaviek, a použiť tieto údaje na testovanie alebo diagnostické informácie. Hodnota poľa hlavičky Via (časť 5.7.1 [RFC7230]) je obzvlášť zaujímavá, pretože funguje ako sledovanie reťazca požiadaviek. Použitie poľa hlavičky Max-Forwards umožňuje klientovi obmedziť dĺžku reťazca požiadaviek, čo je užitočné na testovanie reťazca proxy serverov, ktoré si posielajú správy v nekonečnej slučke.

Klient NESMIE posielať telo správy v požiadavke TRACE.

Odpovede na metódu TRACE nie je možné ukladať do vyrovnávacej pamäte.

Metóda HTTP TRACE bola špecifikovaná v časti 4.3.8 dokumentu RFC 7231 pracovnou skupinou pre internetové inžinierstvo (IETF) a konzorciom World Wide Web (W3C).

Opis metódy TRACE

prebiehajúce práce

Príklad pre metódu 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