TRACE
Метод HTTP
Специфікація HTTP-методу TRACE
Метод TRACE запитує віддалене, на рівні програми, відстеження повідомлення запиту. Кінцевий отримувач запиту ПОВИНЕН відобразити отримане повідомлення, за винятком деяких полів, описаних нижче, назад клієнту у вигляді тіла повідомлення 200 (OK) відповіді з типом вмісту "message/http" (Розділ 8.3.1 [RFC7230]). Кінцевим одержувачем є або сервер-відправник, або перший сервер, який отримав у запиті значення Max-Forwards, рівне нулю (0) (Розділ 5.1.2). Клієнт НЕ повинен генерувати поля заголовка в запиті TRACE, що містять конфіденційні дані, які можуть бути розкриті у відповіді. Наприклад, було б нерозумно для агента користувача надсилати збережені облікові дані користувача [RFC7235] або файли cookie [RFC6265] у запиті TRACE. Кінцевий одержувач запиту ПОВИНЕН виключити будь-які поля заголовка запиту, які можуть містити конфіденційні дані, коли він генерує тіло відповіді.
TRACE дозволяє клієнту бачити, що отримується на іншому кінці ланцюжка запитів, і використовувати ці дані для тестування або діагностичної інформації. Значення поля заголовка Via (розділ 5.7.1 [RFC7230]) представляє особливий інтерес, оскільки воно діє як трасування ланцюжка запитів. Використання поля заголовка Max-Forwards дозволяє клієнту обмежити довжину ланцюжка запитів, що корисно для тестування ланцюжка проксі-серверів, які пересилають повідомлення в нескінченному циклі.
Клієнт НЕ повинен надсилати тіло повідомлення в запиті TRACE.
Відповіді на метод TRACE не кешуються.
Опис методу TRACE
Приклад для 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