flask-login,用户在关闭浏览器后,在打开浏览器,用户还是在登录状态。

发布于 2022-09-01 21:19:00 字数 230 浏览 32 评论 0

我用的是flask-login,在用户未退出的情况下关闭浏览器后,再打开浏览器,输入系统地址,用户还是在登录状态,@login_required并没有起作用,这是为什么?

还有,在关闭当前登录后的系统标签页,新建标签页,输入系统地址用户还是登陆状态,按照文档使用@fresh_login_required会跳转到登录页面,但是并没有,这又是为是么呢?

还有怎样才能设置会话超时呢?

求大神指导!!!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

热情消退 2022-09-08 21:19:00

1.第一个问题,你可能用了“记住我”功能login_user(user,remember=True),一个 cookie 就会存储在用户的电脑上,再次访问,Flask-Login 会自动从那个 cookie 上恢复用户 ID。用户处于登录状态,@login_required自然就会通过。

2.第二个问题,要区分什么叫“用户活跃”官方文档说得很清楚了

当用户登入,他们的会话被标记为“活跃”,这表明他们确实在那个会话中通过验证。
当他们的会话被销毁且他们使用“记住我”,用cookie重新登入,它会被标记为“非活跃”。 login_required 并不区分这两种状态,这对于大多数页面已经足够了。
但像更改某人的个人信息这样的敏感操作应需要一个活跃的登入。(像修改密码这样的操作总是需要密码,无论是否重登入。)fresh_login_required,除验证用户登入外,也会确保用户的登入是活跃的。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文