Как работает Flask Sessions?

session flask

3723 просмотра

1 ответ

142 Репутация автора

Мне очень любопытно, как работает сессия Flask, особенно как она хранит информацию между перезапусками сервера (напишите мне, если я ошибаюсь). Я понимаю, что вы должны установить уникальный, app.secret_keyчтобы люди не могли расшифровать сессию и каким-либо образом изменить cookie. Поскольку файл cookie для сеанса представляет собой просто случайно сгенерированные букву и цифры, будет ли это означать, что идентификатор связан с идентификатором со стороны сервера и что сервер сохраняет сеансы? Если это так, как Flask запомнит сеансы между перезагрузками? Если нет, то как Flask узнает, как расшифровать сессионный cookie?

Автор: EndenDragon Источник Размещён: 18.07.2016 02:47

Ответы (1)


12 плюса

74484 Репутация автора

Решение

Сеанс по умолчанию реализован с использованием безопасных файлов cookie. Файлы cookie сохраняются браузером клиента, Flask ничего не делает в этом отношении. Каждый клиент имеет уникальный файл cookie сеанса, который он отправляет серверу Flask при каждом запросе.

Файл cookie защищен, не зашифрован , он не мешает никому, имеющему файл cookie, просматривать данные, только изменять их. Flask подписывает данные секретным ключом приложения при отправке и подписывает их тем же ключом при чтении.

Настой не добавляет ничего к сеансу. Идентификатора сеанса нет, браузер просто отправляет cookie-файл сеанса при каждом запросе, а Flask читает его.

Вы можете написать свой собственный интерфейс сеанса, чтобы изменить его работу. Смотрите расширения, такие как Flask-Session

Автор: davidism Размещён: 18.07.2016 02:54
Вопросы из категории :
32x32