Вопрос проверяет понимание механизма передачи и установки HTTP-кук между сервером и клиентом.
Заголовки Cookie и Set-Cookie выполняют противоположные роли в HTTP-коммуникации. Cookie — это заголовок запроса, который браузер автоматически добавляет к каждому запросу на сервер, если для данного домена есть сохранённые куки. Он содержит пары ключ-значение, разделённые точкой с запятой. Set-Cookie — это заголовок ответа сервера, который указывает браузеру сохранить новую куку или изменить существующую. Сервер может отправлять несколько заголовков Set-Cookie в одном ответе для установки нескольких кук.
Когда пользователь впервые заходит на сайт, сервер отправляет ответ с заголовком Set-Cookie:
HTTP/1.1 200 OK
Set-Cookie: sessionId=abc123; Path=/; HttpOnlyБраузер сохраняет эту куку. При последующих запросах к тому же домену браузер автоматически добавляет заголовок Cookie:
GET /profile HTTP/1.1
Cookie: sessionId=abc123Заголовок Set-Cookie поддерживает атрибуты, которые управляют поведением куки: Expires (срок действия), Max-Age (максимальный возраст в секундах), Domain (домен, для которого действует кука), Path (путь), Secure (только по HTTPS), HttpOnly (недоступна через JavaScript) и SameSite (защита от CSRF). Заголовок Cookie не имеет таких атрибутов — он просто передаёт сохранённые данные.
Cookie и Set-Cookie — это два разных HTTP-заголовка, которые обеспечивают механизм управления состоянием в вебе. Cookie используется клиентом для отправки данных серверу, а Set-Cookie — сервером для установки или изменения кук на клиенте. Понимание их различий необходимо для корректной работы с аутентификацией, сессиями и настройками пользователя.
Уровень
Рейтинг:
4
Сложность:
3
Навыки
HTML
Networks
Ключевые слова
Подпишись на React Developer в телеграм
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию