Что такое cookie?
DOM и браузер
Cookie — это небольшой фрагмент данных (до ~4 КБ), который сервер сохраняет в браузере и который автоматически отправляется обратно с каждым HTTP-запросом к этому домену.
Для чего используются
- Аутентификация — хранение идентификатора сессии или токена.
- Персонализация — язык, тема.
- Аналитика и трекинг.
Как устанавливаются
Сервер присылает заголовок Set-Cookie, либо из JS:
document.cookie = 'token=abc; max-age=3600; path=/; secure; samesite=lax';Атрибуты
- HttpOnly — недоступна из JavaScript (защита от XSS-кражи).
- Secure — передаётся только по HTTPS.
- SameSite (
Strict/Lax/None) — защита от CSRF, контроль отправки при кросс-сайт запросах. - Expires / Max-Age — срок жизни; без них cookie сессионная (удаляется при закрытии браузера).
- Domain / Path — область действия.
Отличие от Storage
В отличие от localStorage, cookie автоматически шлётся на сервер и имеет флаги безопасности, но ограничена ~4 КБ.
Коротко для собеседования
Cookie — небольшие данные, хранящиеся в браузере и автоматически отправляемые на сервер. Главные атрибуты: HttpOnly (защита от XSS), Secure, SameSite (защита от CSRF), Max-Age. Используются для сессий и авторизации.