【问题标题】:Setting Cookie for all browser tabs为所有浏览器选项卡设置 Cookie
【发布时间】:2018-09-27 12:07:15
【问题描述】:

我想使用 javascript 设置一个 cookie,它可用于浏览器中的所有选项卡。

我用过document.cookie = "tracker=ABC"

即使我也尝试设置路径,但结果保持不变 document.cookie = "tracker=ABC;path=/"

但是,这似乎仅适用于设置它的选项卡。此 cookie 对浏览器中的其他选项卡不可见..

另外,我对 cookie 中的路径概念不是很清楚。如果有人能告诉我它用作辅助答案,那就太好了

问候,

SAP 学习者

所以我的问题是:如何设置适用于浏览器中所有选项卡的 cookie

【问题讨论】:

    标签: javascript google-chrome cookies internet-explorer-11 mozilla


    【解决方案1】:

    cookie 不是链接到浏览器选项卡,而是链接到域及其子域。

    如果您无法创建“交叉表”cookie,可能是因为域不同。这是所有浏览器都实施的明显安全规则,可防止域访问其他域的 cookie。

    如果域相同,则可以正常工作,您可以自行验证:

    • 打开一个标签,然后打开一些网站
    • 在控制台中使用document.cookie = "test" 创建一些cookie
    • 打开另一个标签,然后打开同一个网站
    • 在控制台中输入document.cookie,您将能够看到test cookie

    【讨论】:

    • 感谢您的提示.. 我从来没有意识到这一点.. 所以如果我设置 cookie 如下: document.cookie = "tracker=ABC; domain=google.com; path=/" 然后是跟踪器 cookie当我在任何选项卡中访问 google.com 时将可用.. 这是正确的.. 另外,你能告诉我在 cookie 中使用路径的例子吗..
    • 您的断言是正确的,但您只能设置一个带有域的 cookie,如果它(部分或全部)匹配您的应用程序域(只有 google 可以将 google.com 设置为 cookie 域)
    • 路径与域类似。当您设置域时,它匹配域和子域。当您设置路径时,它匹配路径和子路径
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-12-17
    • 2014-05-07
    • 1970-01-01
    • 2012-09-06
    • 2020-09-20
    • 2014-08-10
    • 2020-06-06
    相关资源
    最近更新 更多