我已经在我的代码中声明了一个cookie,它是在特定函数成功后创建的。我根据方法的成功或失败来操纵cookie。下面是我用来创建cookie的代码,
setCounterOfSuccess : function (c_name,value,days){
var expires='';
if (days){
var date=new Date();
date.setTime( date.getTime() + (days*24*60*60*1000) );
expires='; expires=' + date.toGMTString();
}
document.cookie= c_name + '=' + value + expires + '; path=/';
},
getCounterOfSuccess : function(c_name){
var nameEQ = c_name + '=';
var ca=document.cookie.split(';');
for (var i=0; i<ca.length; i++) {
var c=ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ)===0)
return c.substring(nameEQ.length,c.length);
}
return null;
},
deleteCounterOfSuccess : function (name){
this.setCounterOfSuccess (name,'',-1);
},
我希望这些是会话cookie。因此,在设置值时,我将其设置如下,我传递''作为最后一个参数将它们设置为会话cookie。
我认为当浏览器关闭时它们会过期。
this.setCounterOfSuccess ("counterOfSuccess", Counter, '');
当我从网站点击退出按钮时,我也在删除cookie。它看起来像下面,
logout: function()
{
this.deleteCounterOfSuccess ("counterOfSuccess");
}
所以我正在处理两种方式来删除我的cookie。现在的问题是,当我离开我的网站一段时间后,它会按预期在一段时间后自动注销。这意味着会话自行终止或无效。现在在这种情况下,如果浏览器没有关闭,如果我再次登录,cookie仍然存在。而且我不希望这种情况发生。我想在每个会话中创建新的cookie,以便我可以跟踪会话相关的活动。
任何人都可以建议我如何实现这一目标?如果会话长时间独立后会自行终止,我该如何删除此cookie?
非常感谢。