gpt4 book ai didi

javascript - Firefox 删除持久性 Cookie

转载 作者:行者123 更新时间:2023-11-28 03:09:01 25 4
gpt4 key购买 nike

我一直在尝试让基于 html/js 的语言选择系统正常工作,我需要一个持久的 cookie,它可以保存用户所做的语言选择(一定数量)的时间。

遗憾的是,这个 cookie 被 Firefox 误认为是事件跟踪 cookie(确实如此),因此在 session 结束时被删除。

我可以以某种方式阻止这种情况发生吗?

如果这个脚本可以工作,我完成的代码也应该可以工作:

if(document.cookie.indexOf("test=") < 0){
document.cookie = "test=Hello World; max-age=3600";
}
else{
window.location.replace("https://www.youtube.com/");
}

它应该做什么:

  1. 第一次打开网站时,会设置 cookie,之后不会再发生任何事情。
  2. 用户第二次被重定向到 youtube.com。

它的作用:

  1. 第一次打开网站时,会设置 cookie,之后不会再发生任何事情。
  2. 如果随后刷新网站或在另一个选项卡中打开网站,用户将被重定向到 youtube.com。但是,如果浏览器或选项卡关闭,Cookie 将丢失,我们将回到第 1 步。

最佳答案

我不确定,我不是 JavaScript 专家。但我注意到大多数建议检查 cookie 是否存在的文档都建议这样做: document.cookie.indexOf("test=") 所以也许 cookie 没有被删除,但你的检查如果 cookie 存在,则使用错误的方法。

if(document.cookie.indexOf("test=") < 0){
document.cookie = "test=Hello World; max-age=3600";
}
else{
window.location.replace("https://www.youtube.com/");
}

关于javascript - Firefox 删除持久性 Cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60335397/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com