Hack Frontend Community

Что такое Cookie и как с ними работать

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


Set-Cookie: userId=12345; Path=/; Expires=Wed, 09 Apr 2025 10:00:00 GMT;

Этот заголовок говорит браузеру: «Сохрани cookie userId со значением 12345, доступный по всему сайту (Path=/) и действительный до указанной даты».

  • Авторизация и хранение токенов сессий
  • Отслеживание пользователя (например, Google Analytics)
  • Хранение пользовательских настроек (язык, тема)
  • A/B тестирование и персонализация
ПараметрОписание
name=valueИмя и значение cookie
PathОграничивает путь, для которого доступен cookie
DomainОграничивает домен (или поддомен)
ExpiresУказывает дату, когда cookie будет удалён
Max-AgeВремя жизни cookie в секундах
SecureCookie будет передаваться только по HTTPS
HttpOnlyНедоступен через document.cookie — защищает от XSS
SameSiteКонтролирует поведение при кросс-доменных запросах (Lax, Strict, None)

Безопасность

Важно:

Используйте флаги Secure и HttpOnly для всех cookie, содержащих чувствительные данные, особенно токены авторизации!

Прочитать

console.log(document.cookie); // "name=value; theme=dark"

Удалить

Чтобы удалить cookie, установите expires в прошлое:

document.cookie = "theme=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;";
  • Максимум ~20 cookie на домен
  • Максимальный размер одного cookie — ~4KB
  • Отправляются в каждом HTTP-запросе → могут увеличить трафик
  • Не подходят для хранения больших объёмов данных

Вывод:

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