抛开早已熟悉的道德约束,我们都知道用户跟踪是当今广告行业的前沿趋势,其可用于有效地将广告消息传递给个人,并为企业带来最佳的投资回报率。但是,网站的技术限制可能会使这个目标变得更加困难,例如,对于 Safari 浏览器,每个 Cookie 的存储时间限制为 7 天。
然而,这似乎是对于智能化的广告追踪和定位投放的致命打击,不过,没关系,我们有技巧来突破Safari的7天Cookie限制。
我将会逐步介绍一种方法,可以使突破限制变得相对轻松。它的核心是一个名为 “localStorage” 的 Web 存储 API。它始终在浏览器中保持数据,并且不会像 Cookie 那样在每个 HTTP 请求中发送,因此可以更长久地存储。
首先,需要访问要追踪的网站并在其中运行以下代码:
“`
localStorage.setItem(‘key’, ‘value’);
“`
例如:
“`
localStorage.setItem(‘username’, ‘myuser’);
“`
然后,这个“value”会一直被保存在 localStorage 中,而不是 Cookie 中。
接下来,我们需要确保下一次访问同一网站时,代码可以通过 Key 访问 Value。 因此,必须在每次页面加载时提取信息:
“`
localStorage.getItem(‘key’);
“`
例如:
“`
localStorage.getItem(‘username’);
“`
此时,“key”和“value”都将在 localStorage 中保存,这意味着它们可以进行无限期的存储。
最后,现在是时候将其与 JavaScript 中的 SetInterval() 函数结合使用了。 该函数可按照您指定的时间间隔运行代码。 在此方法中,我们仅存储了user信息,而不是整个Cookie,因此我们不必担心将随着时间的推移越来越多的数据发送回服务器。
以下是完整的 JS 代码:
“`
// Func to fetch localStorage value
const userInfo = localStorage.getItem(‘userInfo’) || ”;
// Set localStorage value
localStorage.setItem(‘userInfo’, JSON.stringify({
‘username’: ‘myusername’,
‘token’: ‘mytoken’
}));
// Update localStorage value for every 5 mins
setInterval(() => {
localStorage.setItem(‘userInfo’, JSON.stringify({
‘username’: ‘myusername’,
‘token’: ‘mytoken’
}));
}, 300000);
console.log(userInfo);
“`
最后,请记住,虽然这是一种可以“解决” Safari 7 天 Cookie 存储限制的方法,但请谨慎行事。 以及,不要将其依赖于用户的谦虚或无知,而要充分披露您使用此技术跟踪其行为的事实。这是一个双刃剑。
总的来说,使用 localStorage 可以轻松地绕开 Safari 浏览器上严格的 7 天 Cookie 存储限制。 但是请确保您遵守所有道德和法律约束,否则您可能会被从不知名的地方视为风险。
了解更多有趣的事情:https://blog.ds3783.com/