session - 强制清理 session cookie(firefox、chrome)

标签 session firefox cookies

如果您设置了某种记住我的开关(例如在 FF 中,请转到选项-> 常规-> Firefox 启动时-> 显示我的窗口),某些浏览器(Firefox、Chrome)在设计上不会在您关闭 session cookie 时清除它们和上次的标签)。这对我们的客户(政府机构...)来说是个问题,虽然我对 http 服务器有绝对控制权,但我无法控制浏览器设置。场景是 - 它们用于共享计算机帐户,但是它们不应该能够共享 Web 帐户 - 只需关闭浏览器就可以终止 session ,而不管浏览器设置。

有没有一种优雅的方式来执行它?

目前我想到的唯一解决方案是某种死人的开关(将 cookie 更改为仅存活一分钟(加密的服务器端时间戳),并且在每个页面上都有 javascript“pinger”,每半分钟 ping 20 分钟服务器上的一些“延长 session ”处理程序(登录 session 应为 20 分钟,滑动到期)。

最佳答案

您可以尝试使用 HTML5s sessionStorage 它持续页面 session 的持续时间。只要浏览器打开,页面 session 就会持续,并在页面重新加载和恢复后继续存在。在新选项卡或窗口中打开页面将导致启动新 session 。

sessionStorage.setItem("username", "John");

https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Storage#sessionStorage

浏览器兼容性
https://code.google.com/p/sessionstorage/
兼容所有 A 级浏览器,包括 iPhone 或 Android。
http://www.nczonline.net/blog/2009/07/21/introduction-to-sessionstorage/

关于session - 强制清理 session cookie(firefox、chrome),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17925590/

相关文章:

oracle - ORA-12519,TNS :no appropriate service handler found

HTML 5 Appcache 适用于 safari/opera/chrome 但不适用于 firefox

javascript - 使用 HTML/JavaScript 检测本地文件拖放

javascript - 使用 Passportjs 刷新页面后保持身份验证

php - 在 onchange 事件中更新 css

php - Yii2:用户更改密码后从所有浏览器注销

firefox - Apache 2 身份验证错误

javascript - 如何使用 javascript 阻止所有客户端 cookie?

javascript - iOS 上的 Safari >=11 默认情况下阻止 cookie 和网络存储 - 如何保留(第一方)数据?

Android Retrofit session - cookie