加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – Flask-Login:当标签关闭时,如何强制Firefox / Chro

发布时间:2020-12-16 21:47:09 所属栏目:Python 来源:网络整理
导读:我一直在尝试学习Flask,以及Flask-Login扩展.我可以按预期进行基本身份验证.让我难以理解的问题涉及Firefox中的“显示我上次的窗口和标签”设置以及Chrome中的“继续我离开的位置”设置.我在本网站和其他地方所做的所有研究表明,这些设置仅适用于打开的标签.

我一直在尝试学习Flask,以及Flask-Login扩展.我可以按预期进行基本身份验证.让我难以理解的问题涉及Firefox中的“显示我上次的窗口和标签”设置以及Chrome中的“继续我离开的位置”设置.我在本网站和其他地方所做的所有研究表明,这些设置仅适用于打开的标签.因此,如果您通过身份验证然后关闭选项卡,然后关闭浏览器,则浏览器应仅恢复浏览器关闭时打开的选项卡的仅会话cookie.但是,对于Firefox和Chrome,当再次启动浏览器时,仅会话cookie仍处于活动状态,并导航到标记为@login_required的页面.我还应该提一下,我将False传递给login_user remember参数,如下所示:login_user(user,remember = False)

我已经玩过Flask-Login扩展的新登录想法,认为在关闭浏览器之前关闭选项卡肯定会将会话标记为陈旧,但事实并非如此.我检查login_fresh()的值,如果登录是新的,则返回true,并且它仍然返回True.

我发现如何使用session.permanent = True在给定时间之后使登录过期,然后设置app.permanent_session_lifetime =’这么多分钟/秒’,这非常有效,但不是我想要的.

我可以忍受这样的事实:Firefox / Chrome会记住打开的标签的会话cookie,但我不明白为什么他们会记住我的网站的会话cookie,即使在关闭浏览器之前关闭标签页也是如此.这是预期的行为吗?当我首先关闭选项卡然后关闭浏览器时,期望为我的网站删除会话cookie是否合理?

最佳答案

Is this the expected behavior? Is it reasonable to expect the session cookie to be removed for my site when I close the tab first then the browser?

显然是的,这是预期的行为,并且你没有理由期待这样的事情.您所看到的行为似乎是浏览器实现“会话恢复”功能的一种深思熟虑的设计决策.

>请参阅此Firefox bug from 2009(永恒版)会话恢复可能导致会话cookie生命周期过长,其中包含许多重复项且无解决方案.
>或者当Chrome进程以WontFix状态关闭时,不会清除此Chromium bug from 2012会话Cookie

所以,简而言之,我不认为从服务器端你可以做任何事情,无论多么棒的烧瓶:(

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读