首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Flask会话:未正确设置PERMANENT_SESSION_LIFETIME

Flask会话:未正确设置PERMANENT_SESSION_LIFETIME
EN

Stack Overflow用户
提问于 2019-11-20 02:18:42
回答 2查看 1.6K关注 0票数 0

所以我使用了一个flask会话。我使用文件系统类型,这样我可以存储比其他类型更多的会话数据。我的用户希望保持较长的会话超时,并且站点使用最少的服务器存储,所以这是很好的。但是,当我尝试将超时会话设置为下面的24小时时,它仍然在30分钟后超时。

代码语言:javascript
复制
application = Flask(__name__)
SECRET_KEY = os.urandom(32)
application.config['SESSION_PERMANENT'] = True
application.config['SESSION_TYPE'] = 'filesystem'
application.config['PERMANENT_SESSION_LIFETIME'] = timedelta(hours = 24)

application.config['SECRET_KEY'] = SECRET_KEY

Session(application)



@application.before_request
def make_session_permanent():
    session.permanent = True
    application.permanent_session_lifetime = timedelta(hours = 24)

我在这里做错了什么?

EN

回答 2

Stack Overflow用户

发布于 2019-11-20 03:28:05

我会将session.permanent =true的代码行改为session.modified = True,然后看看它是否可以工作。

票数 0
EN

Stack Overflow用户

发布于 2019-11-22 02:44:10

我相信我已经找到了问题所在:SECRET_KEY = os.urandom(32)。每次应用程序重新启动(浏览器中的空闲窗口重新加载)时,会话数据都会随着新密钥的生成而被擦除,这意味着浏览器无法找到所需的cookie。我在外部生成了一个键,然后将这个值硬编码到我的代码中,这样每次都是一样的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58940478

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档