Как корзина переживает переход между страницами

Когда вы нажимаете «Добавить в корзину», сайт обычно сохраняет не сам товар в куки, а небольшой идентификатор корзины. Браузер записывает его и при следующих запросах к тому же сайту автоматически отправляет обратно. По этому ключу сервер находит список товаров и показывает корзину снова — даже если вы открыли другую страницу.

Так сайт связывает отдельные обращения браузера в одну последовательность. Без этого каждый запрос выглядел бы для сервера независимым: он не знал бы, что минуту назад вы выбрали кроссовки.

Что именно хранится в браузере

Куки — это короткие текстовые записи, которые сайт просит сохранить в браузере. В них может лежать сам небольшой набор данных или, что чаще удобно для корзины, случайный идентификатор. Подробный список покупок тогда хранится на сервере, а браузер передаёт только ключ, по которому его можно найти.

Такой подход позволяет обновлять корзину и рассчитывать её содержимое на стороне сайта. Если же браузер перестаёт отправлять нужную куку — например, пользователь удалил её, — сайт может потерять связь с прежней корзиной. Поэтому иногда товары исчезают после очистки данных браузера или при переходе на другое устройство.

Почему корзина не всегда сохраняется навсегда

Срок действия куки задаёт сайт. Одни записи удаляются при закрытии браузера, другие остаются дольше; кроме того, корзина может быть привязана к аккаунту и восстановиться после входа. Кука не является самой корзиной: это скорее метка, помогающая сайту узнать, какую корзину показать.