gpt4 book ai didi

javascript - 我可以收到客户端 javascript 中 cookie 更改的通知吗

转载 作者:可可西里 更新时间:2023-11-01 01:41:32 26 4
gpt4 key购买 nike

我能否以某种方式在我的客户端 javascript 中跟踪 cookie 的更改(对于我的域)。例如,当 cookie 被更改、删除或添加时调用的函数

按优先顺序

  • 标准跨浏览器
  • 跨浏览器
  • 特定于浏览器
  • 扩展/插件

为什么?因为我在窗口/选项卡#1 中依赖的 cookie 可以在窗口/选项卡#2 中更改。

我发现 chrome 允许扩展程序收到 cookie 更改的通知。但这是我最不喜欢的选择

最佳答案

一种选择是编写一个定期检查 cookie 更改的函数:

var checkCookie = function() {

var lastCookie = document.cookie; // 'static' memory between function calls

return function() {

var currentCookie = document.cookie;

if (currentCookie != lastCookie) {

// something useful like parse cookie, run a callback fn, etc.

lastCookie = currentCookie; // store latest cookie

}
};
}();

window.setInterval(checkCookie, 100); // run every 100 ms
  • 这个例子使用了一个持久内存的闭包。外层函数立即执行,返回内层函数,并创建私有(private)作用域。
  • window.setInterval

关于javascript - 我可以收到客户端 javascript 中 cookie 更改的通知吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14344319/

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