javascript - 不使用 sessionStorage 或任何 HTML5 功能的选项卡特定 cookie

标签 javascript php cookies

我有兴趣让用户能够在我的网络应用程序上使用多个用户 session cookie 登录和注销。目前,身份验证是标准完成的,如果用户出示在其 cookie 中可用的身份验证 token ,则唯一标识符允许我在他们访问我们的网站时对用户进行身份验证。典型的用例适用于如果用户从一个选项卡注销,它会将他们从另一个选项卡注销。现在它需要让用户从两个唯一的浏览器实例登录,以便能够登录到两个不同的帐户。

是否有非 HTML5 方式(使用标准的 javascript cookie)来获得特定于选项卡的 cookie 标识符?我假设没有明确的方法来解决这个问题,它需要来自后端的某种 hack + 合作。如果有一个不使用 HTML5 也有意义的解决方案,那将是理想的。

最佳答案

You can't.

有多种方法可以处理这种情况,但没有一种是简单的。

如果需要,您必须告诉用户这样做: How to geek

来自文档: 使用 sessionStorage 存储的数据不会跨浏览器选项卡持续存在,即使两个选项卡都包含来自同一域来源的网页。换句话说,sessionStorage 中的数据不仅限于调用页面的域和目录,还包括包含该页面的浏览器选项卡。与 session cookie 形成对比, session cookie 会持久保存数据从标签到标签。

关于javascript - 不使用 sessionStorage 或任何 HTML5 功能的选项卡特定 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27137562/

相关文章:

python - 为什么 session cookie 在从域提供服务时有效,但在使用 IP 时无效?

javascript - 未捕获的 TypeError : $(. ..).modal 不是函数

Php-MySql 插入 MySql 并从 MySql 获取到屏幕时的安全方法

javascript - 重定向延迟导致临时显示不正确的组件

php - Yii2:从 hasMany 关系中选择最后一条记录

php - 如何使用 MySQL 查询选择 WordPress 中的所有类别?

java - jersey 添加 cookie 然后进行重定向

session - Flutter 用于 Web Cookie/ token session 和身份验证

javascript - 闭包和柯里化(Currying)中的引用如何在 js 中工作?

javascript - 在 Bootstrap 模式中提交表单