Flask把会话存储在哪里?

9

我最近开始学习Python。目前我正在尝试构建一个简单的Web应用程序,需要登录才能访问一些路径。

我了解到可以使用类似于Flask中的session['user']=user_id的方法来实现这个功能。

有人能帮我解释一下这是如何工作的吗?比如说如果不在数据库表中存储会话,Flask会将会话存储在哪里呢?

1个回答

10
它将数据存储在客户端的cookie中。根据官方文档

这是在cookie的基础上为您实现的,并对cookie进行了加密签名。这意味着用户可以查看cookie的内容,但除非他们知道用于签名的密钥,否则不能修改它。

如果您需要服务器端会话存储,则有一个名为Flask-Sessionstore的扩展程序,可让您选择存储方法,包括服务器端数据库。

flask-sessionstore 已经不再维护,但是 https://github.com/fengsp/flask-session 似乎已经被重新启用。 - Nickolay

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接