Заголовки (headers) — это пары «имя: значение», передающие служебную информацию вместе с запросом и ответом. Они не входят в тело, но управляют тем, как обрабатывать запрос.
Частые заголовки запроса: • Content-Type — формат отправляемых данных: application/json; • Accept — какой формат ответа клиент хочет получить; • Authorization — данные для входа (токен); • User-Agent — что за клиент делает запрос.
Частые заголовки ответа: • Content-Type — формат тела ответа; • Cache-Control — можно ли кешировать; • Set-Cookie — установить cookie в браузере.
Пример отправки JSON с правильным заголовком:
POST /users Content-Type: application/json
{ "name": "Аня" }
Если забыть Content-Type: application/json при отправке JSON, сервер может не понять данные. Заголовки — тонкая, но важная часть протокола: через них договариваются о форматах, кешировании и безопасности.