Javascript 如何在考虑智能跟踪保护的情况下设置cookies客户端?

Javascript 如何在考虑智能跟踪保护的情况下设置cookies客户端?,javascript,cookies,Javascript,Cookies,根据,cookie使用document.cookie在客户端设置为7天到期 我理解仅对敏感Cookie(如身份验证令牌)使用httpOnly的基本原理,但如果我需要长时间存储某些内容并使其在站点的子域中可用,那么Cookie是唯一的选择,对吗 有了这些新的ITP限制,在客户端设置cookies,这些cookies应该可以使用更长的时间是行不通的,那么什么是实现这一点的最佳方法呢?一个想法是创建一个路由,该路由接受参数并将其转换为一个集Cookie头,然后向该头发出请求,而不是使用document

根据,cookie使用document.cookie在客户端设置为7天到期

我理解仅对敏感Cookie(如身份验证令牌)使用httpOnly的基本原理,但如果我需要长时间存储某些内容并使其在站点的子域中可用,那么Cookie是唯一的选择,对吗


有了这些新的ITP限制,在客户端设置cookies,这些cookies应该可以使用更长的时间是行不通的,那么什么是实现这一点的最佳方法呢?一个想法是创建一个路由,该路由接受参数并将其转换为一个集Cookie头,然后向该头发出请求,而不是使用document.Cookie。有更好的方法吗?

一种尝试是使用cookie代替cookie,从技术上讲,cookie不会过期。然而,问题可能是,用户可以决定清空本地存储

这里有一个例子

//use this if you only need it for the current page and remove it after leaving the page
const exampleStorage = window.localStorage;
exampleStorage.setItem('currentUser', 'Manuel');

//use this if you need to keep it even after leaving the page
localStorage.setItem('glob_currentUser', 'Max');

//and finally this if you need to keep it only for the session
sessionStorage.setItem("session", "Morning")
如果您需要有关LocalStorage的更多信息,请访问以下两个有用的网站:


本地存储不是跨子域共享的,这在我的情况下是一个问题,但它也不能在服务器端读取。是的,这确实是一个问题,但是你让我想知道,如果你有一个后端服务器,为什么不为服务器上的每个用户保存cookie数据?导致设置cookie的事件发生在客户端,我想避免在服务器端不需要发生与该cookie相关的任何事情的情况下,为了处理ITP的cookie设置而不得不进行路由。Uff,ye,我明白你的意思,我知道一个类似的案例,即企业在ITP干扰其第一方cookie时遇到问题,他们最终将cookie数据保存在服务器上的用户配置文件中。唯一的另一种方法,尽管我强烈反对使用我所知道的方法,是直接将数据保存在客户端maschine上。通过使用Window.requestFilesystem。。。然而,这只是一个草稿,在任何方面都不安全。