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.
Opis metódy TRACE
Príklad pre metódu HTTP 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