我将cookie设置为从现在开始1分钟后过期,但是,从浏览器中删除cookie本身所需的时间更像是1:50。
这是我们设置cookie的方法:
setCookie: function(key, val, ttlInMinutes) {
var expires = '';
if (ttlInMinutes > 0) {
var date = new Date();
date.setTime(date.getTime() + (ttlInMinutes * 60 * 1000));
expires = '; expires=' + date.toGMTString();
}
var domain = '';
if (SnapABug.getDomain()) {
domain = '; domain=' + SnapABug.getDomain();
}
var other = '';
if (secureCookies) {
other = '; Secure';
}
document.cookie = key + '=' + val + expires + '; path=/;' + domain + other;
}
这将在浏览器中输出正确的将来时间:
我比较了设置为“自动”的系统时钟。
我们还假设浏览器没有关闭,并且网站访问者在网站上处于活动状态。
我的问题是:
什么跟踪这个到期时间?
浏览器中是否有时钟/计时器?
答案 0 :(得分:0)
如果您打开的浏览器没有导航/刷新/打开-关闭选项卡,则似乎无法跟踪到期日期。这将要求浏览器运行大量独立线程,并且跟踪它是不现实的。 因此,cookie过期实际上仅是在导航/刷新/打开关闭时的理想选择。