chromium系浏览器在关闭浏览器时不会清除会话cookies

返回
Author Avatar
钢翼
2024-06-06
编程
64

需求:希望通过关闭浏览器时,能清除当前会话的登录状态,达到提升系统安全性的目的。

以下是不可行的方案:

  • 1.sessionstorage

由于页面存在多开的情况。用sessionstorage存储登录token是不可取的,这样每个标签页都得重新登录。

  • 2.页面 unload事件

想通过注册unload事件来清除token也是不可取的,一方面是多开下,没法确定是不是都关闭了所有站点页面。而且浏览器崩溃下也触发不了unload

  • 3.cookies

chromium系浏览器一般用户都会设置浏览器启动时打开上一个会话中的标签页。所以在关闭浏览器时并不会清除会话cookies。

感觉无解,看来只能缩短token的过期时间来规避风险了。

以下是搜索到的同类问题:

https://stackoverflow.com/questions/10617954/chrome-doesnt-delete-session-cookies

https://segmentfault.com/q/1010000040436358

https://segmentfault.com/q/1010000011981273