Каково назначение HTTP-cookie?

Ответ

HTTP-cookie — это небольшие фрагменты данных, которые сервер отправляет браузеру. Браузер сохраняет их и отправляет обратно с каждым последующим запросом к тому же серверу.

Они решают проблему сохранения состояния (state) в протоколе HTTP, который по своей природе является stateless (не хранит информацию о предыдущих запросах).

Основные сценарии использования:

  • Управление сессиями: Аутентификация пользователей, сохранение корзины покупок в интернет-магазине.
  • Персонализация: Хранение пользовательских настроек, таких как тема оформления сайта или выбранный язык.
  • Отслеживание (Tracking): Сбор статистики о поведении пользователя на сайте для аналитики или рекламы.

Пример работы:

  1. Сервер устанавливает cookie:

    HTTP/1.1 200 OK
    Content-Type: text/html
    Set-Cookie: user_id=12345; Max-Age=3600
    
    [Содержимое страницы]
  2. Браузер отправляет cookie обратно при следующем запросе:

    GET /profile HTTP/1.1
    Host: example.com
    Cookie: user_id=12345