Ответ
HTTP-заголовки передают служебную информацию о запросе или ответе. Их можно разделить на несколько категорий:
1. Стандартные заголовки (по назначению):
- Авторизация:
Authorization: Bearer <token>,Authorization: Basic <credentials>. - Кэширование:
Cache-Control: max-age=3600,ETag,If-None-Match. - Тип контента:
Content-Type: application/json,Accept: application/xml. - CORS (Cross-Origin Resource Sharing):
Origin,Access-Control-Allow-Origin,Access-Control-Allow-Methods. - Куки:
Cookie: sessionId=abc123,Set-Cookie: .... - Безопасность:
X-Content-Type-Options: nosniff,Strict-Transport-Security: max-age=31536000.
2. Пользовательские (кастомные) заголовки:
- По соглашению начинаются с префикса
X-, например:X-Request-ID,X-API-Key,X-CSRF-Token. - Используются для передачи внутренней логики приложения (трассировка, идентификация, метаданные).
Пример добавления заголовков в запросе с помощью Python (библиотека requests):
import requests
headers = {
'Authorization': 'Bearer eyJhbGciOiJIUzI1NiIs...',
'Content-Type': 'application/json',
'X-Trace-ID': 'req-789',
'User-Agent': 'MyApp/1.0'
}
response = requests.post(
'https://api.example.com/data',
headers=headers,
json={'key': 'value'}
)
Важно: Заголовки не предназначены для передачи основного тела запроса (payload), для этого используется тело сообщения (body).