Junior
Как работят бисквитките?
sobes.tech AI
Отговор от AI
Бисквитките са малки фрагменти данни, които сървърът изпраща на браузъра на клиента и ги запазва на устройството му. При последващи заявки към същия сървър браузърът ги връща обратно.
Процес на работа:
- Изпращане от сървъра: При първото обръщение на клиента към уеб приложение, сървърът може да включи в HTTP отговора заглавие
Set-Cookie. Това заглавие съдържа информация за бисквитките, които браузърът трябва да запази.// Пример за заглавие Set-Cookie в HTTP отговор Set-Cookie: sessionid=abc123; Expires=Wed, 09 Jun 2021 10:18:14 GMT; Secure; HttpOnlysessionid=abc123: Име и стойност на бисквитката.Expires: Дата и време на изтичане на бисквитката. Ако липсва, бисквитката ще бъде сесийна (изтрива се при затваряне на браузъра).Secure: Изпращане на бисквитките само по HTTPS.HttpOnly: Забранява достъпа до бисквитките чрез JavaScript (повишава сигурността).
- Запазване от браузъра: Браузърът получава заглавието
Set-Cookieи запазва бисквитките в локалното хранилище. Всяка бисквитка е свързана с определен домейн и, по желание, път. - Изпращане от браузъра: При последващи заявки към домейна, за който са запазени бисквитките, браузърът автоматично ги включва в HTTP заявката в заглавието
Cookie.// Пример за заглавие Cookie в HTTP заявка Cookie: sessionid=abc123 - Обработка от сървъра: Сървърът получава бисквитките от заглавието
Cookieи ги използва за идентифициране на клиента, запазване на състоянието на сесията, персонализация на съдържанието и други цели.
Основни атрибути на бисквитките:
| Атрибут | Описание |
|---|---|
Expires |
Дата и време, когато бисквитката ще престане да бъде валидна. |
Max-Age |
Максимален срок на живота на бисквитката в секунди. По-важен от Expires. |
Domain |
Домейн, за който е валидна бисквитката. По подразбиране — текущият домейн. |
Path |
Път в рамките на домейна, за който е валидна бисквитката. |
Secure |
Изпращане на бисквитките само чрез сигурна връзка (HTTPS). |
HttpOnly |
Забранява достъпа до бисквитките чрез JavaScript. |
SameSite |
Управлява изпращането на бисквитки при междусайтови заявки (защита срещу CSRF). |
Използване на бисквитки:
- Управление на сесии: Запазване на идентификатора на сесията за поддържане на състоянието на потребителя между заявките.
- Персонализация: Запомняне на предпочитанията на потребителя, например език или тема.
- Проследяване: Анализ на поведението на потребителя на сайта (с негово съгласие).
Ограничения:
- Ограничен размер на данните (обикновено около 4 KB на бисквитка).
- Ограничен брой бисквитки на домейн.
- Могат да бъдат изключени или изтрити от потребителя.