我试图把
AbstractList
在会话中,但在另一个蓝图中它不会持续......为什么会这样?
有没有更好的方法来保持会话中的某些内容?
扩展:
我有一张蓝图,表格可以登录。完成并提交后,它将设置如上所述的会话密钥。然后通过
重定向返回重定向(url_for('admin.index'))
到管理页面,如果我通过
调用密钥session.get( 'LOGGED_IN')
我得到“无”而不是真或假。
答案 0 :(得分:2)
我想我现在明白你的困惑了〜
您的烧瓶会话不会在服务器上存储任何内容。 '会话' dict由客户请求的cookie填充。
再次。那就是:
客户端向服务器发出登录请求,并获得[登录成功]响应以及包含!!! sessionINFO的[cookies]!你认为存储在服务器端。
下次,您必须再次将整个cookie发送到服务器,然后服务器中的会话可能有数据。
浏览器会为您完成此操作。 如果您使用本地客户端,请说python请求库。然后确保你使用session发出请求(对于requests-lib,它的request.Session())
------------------ OLD ---------------------------- ---------
虽然不是专家,但你描述的情况不应该发生。
会话是使用秘密加密的cookie数据,如果您已经阅读了Beqa提到的文档。
只需设置
app.secret = '........'
并将会话用作词典。
仅供参考,
客户端请求---->服务器(加密your_data' logged_in'和client_relating_data'可能:ip,host等等,并将加密信息放入Cookie& #39; session = ....')------>客户(通过cookie获得回复)
客户请求再次----->服务器(用你的秘密解密cookie' session = ...')找到' logged_in'数据并知道您已登录。)
cookies就像下面这样。
所以,我不确定在使用会话时你的麻烦是什么,并在此处提供了一些基本信息。希望它有所帮助。