Ответ
HTTP-заголовки (headers) — это пары ключ: значение, которые передают метаданные и управляющую информацию между клиентом и сервером в рамках HTTP-запроса или ответа. Они позволяют "договориться" о формате данных, аутентификации, кэшировании и других аспектах взаимодействия.
Основные категории и примеры заголовков:
- Аутентификация:
Authorization— содержит учетные данные для доступа к защищенному ресурсу. - Согласование контента (Content Negotiation):
Accept,Content-Type— определяют форматы данных, которые клиент может принять и которые сервер отправляет (например,application/json). - Управление кэшированием:
Cache-Control,Expires— указывают, как долго ответ может храниться в кэше браузера или прокси-сервера. - Управление CORS:
Access-Control-Allow-Origin— разрешает кросс-доменные запросы с указанных источников. - Cookies:
Cookie,Set-Cookie— используются для управления состоянием сессии.
Пример отправки заголовков в Python с помощью requests:
import requests
# Заголовки, отправляемые клиентом на сервер
request_headers = {
'User-Agent': 'MyCoolApp/1.0',
'Accept': 'application/json',
'Authorization': 'Bearer your_api_token'
}
response = requests.get(
'https://api.example.com/data',
headers=request_headers
)
# Вывод заголовков, полученных в ответе от сервера
print(response.headers)