Состояние: Cookies и сессии

Подходы к хранению состояния сеанса на клиенте и на сервере. Требования философии REST к идентификации запросов.

  • 00:02:27 - Add Item
  • 00:03:32 - Cart is Empty
  • 00:03:55 - Global Server State
  • 00:07:47 - Scalability
  • 00:08:53 - Stateless
  • 00:11:51 - Add Item?
  • 00:13:09 - Store Data into Browser
  • 00:13:49 - Set-Cookie
  • 00:16:20 - For a Long Time
  • 00:17:40 - Without JavaScript Access
  • 00:20:18 - HTTPS Only
  • 00:20:53 - Empty Cart
  • 00:21:10 - Full Cart
  • 00:22:43 - Private Client State
  • 00:25:50 - Affiliate
  • 00:27:22 - Partial Affiliate
  • 00:28:20 - Global Affiliate
  • 00:29:46 - Cookie
  • 00:30:15 - Security
  • 00:32:55 - Session
  • 00:37:41 - File Session
  • 00:43:52 - Session Storage
  • 00:47:53 - Подведение итогов
Скрытый контент (код, слайды, ...) для подписчиков. Открыть →
Дмитрий Елисеев
elisdn.ru
Комментарии (15)
Пересматриваю занятия по несколько раз, появились пожелания
  • сделать возможность "прыгать" по временным меткам (активные ссылки под видео)
  • сохранять текущую позицию просмотра и продолжать при следующем просмотре (комп вырубился, и очень не хотелось самому искать где была пауза)
Ответить
Дмитрий Елисеев

Сделали

Ответить
Алексей Тимков

Лучший пример по кукам который встречал. Диме как всегда спасибо

Ответить
voodooism

Ссылки на временые метки очень нужны! В этом видео так же отсуствует регулятор звука.

Ответить
Анатолий

Дмитрий, подскажите. Помимо хранилища Cookies, есть еще Local Storage и Session Storage, для чего их используют и чем они отличаются?

Ответить
Дмитрий Елисеев

Local и Session Storage доступны только из JavaScript. Его содержимое браузером на сервер никак не передаётся.

У Cookies есть ограничение на размер в несколько килобайт. А в Local и Session можно хранить мегабайты.

Session Storage работает до закрытия браузера, Local Storage сохраняет данные навсегда.

Ответить
Владислав

По-моему session storage работает до закрытия вкладки. Тобишь если откроешь новую вкладку с таким же адресом, сохраненных данных там уже не будет.

Ответить
Дмитрий Елисеев

Да, Session Storage хранит только в одной сессии работы с сайтом в одной вкладке браузера. Если зайти в другую вкладку или если перейти по редиректу на другой сайт и вернуться назад, то сессия сбросится.

Ответить
1 вкладка = (как будто) 1 браузер

современный браузер, это по сути оболочка, которая способна запускать множество браузеров(вкладок)

Ответить
Вроде знаю, а вот прям интересно рассказываете

Вроде знаю, а вот прям интересно рассказываете

Ответить
Владимир Перепеченко

Хорошее объяснение. Такой вывод после прочитения нескольких статей про Куки.

Ответить
Сергей

Есть вопрос по поводу сессий, правильно я понимаю, после открытия страницы и вызова функции session_start для каждого пользователя создается сессия на сервере (файл с уникальным идентификатором). В какой момент этот файл удаляется\сессия закрывается?

Ответить
Дмитрий Елисеев

после открытия страницы и вызова функции session_start для каждого пользователя создается сессия на сервере

Если в запросе из браузера пользователя пришла кука с идентификатором, то открывается старая сессия по нему. Если запрос чистый без куки, то создаётся новая сессия и в браузер возвращается её идентификатор.

Ответить
Дмитрий Елисеев

В какой момент этот файл удаляется\сессия закрывается?

В PHP сессии автоматически чистятся по Cron через время session.gc_maxlifetime из php.ini

По умолчанию установлено 30 минут.

Ответить
Юрий

Хочется поблагодарить за прекрасное видео. Просто, доступно. Спасибо.

Ответить
Зарегистрируйтесь или войдите чтобы оставить комментарий

Или войти через:

Google
GitHub
Yandex
MailRu