К списку
Web-тестирование и DevToolsJuniorСкрининг с HR

Что представляет собой cookie и для чего он используется в вебе

Краткий ответ

Cookie — это небольшой фрагмент данных, который веб-сайт сохраняет в браузере пользователя для хранения информации о сессии и настройках. Он помогает обеспечить персонализированный опыт и поддерживать состояние между запросами.

Развёрнуто

Краткий ответ

Cookie — это текстовый файл небольшого размера, который веб-сервер отправляет браузеру и который сохраняется на устройстве пользователя. Он служит для хранения данных о сессии, предпочтениях и другой информации, необходимой для корректной работы сайта.


Как это работает

Когда пользователь посещает веб-страницу, сервер может отправить заголовок Set-Cookie с определёнными данными. Браузер сохраняет эти данные и при последующих запросах к тому же домену автоматически отправляет их в заголовке Cookie. Это позволяет серверу идентифицировать пользователя, поддерживать сессии, запоминать настройки и обеспечивать персонализацию.

Основные характеристики cookie:

Параметр Описание
Name Имя cookie
Value Значение cookie
Domain Домен, для которого cookie действителен
Path Путь в рамках домена
Expires/Max-Age Время жизни cookie
Secure Передача только по HTTPS
HttpOnly Запрет доступа из JavaScript

Пример

Set-Cookie: sessionId=abc123; Path=/; HttpOnly; Secure; Max-Age=3600

Данный заголовок устанавливает cookie с именем sessionId и значением abc123, доступный на всём сайте, передаваемый только по HTTPS, недоступный JavaScript и сроком жизни 1 час.

Что важно знать на собеседовании

  • Cookie сохраняются на стороне клиента и отправляются серверу при каждом запросе к соответствующему домену.
  • Они используются для управления сессиями, персонализации и хранения пользовательских настроек.
  • Атрибуты Secure и HttpOnly повышают безопасность cookie.
  • Размер cookie ограничен (обычно около 4 КБ), и браузеры ограничивают их количество.
  • Для управления cookie в браузере используются DevTools, что помогает в тестировании веб-приложений.

Тема: Web-тестирование и DevTools | Уровень: junior