我正在使用下面的Javascript设置Cookie,但它没有设置
曲奇饼。 Chrome的调试器没有给我任何错误,所有变量都是
正确。它似乎没有设置cookie。 document.cookie
仍然是“”。任何人都可以建议为什么没有设置cookie?
function setCookie(name,value,exdays){
var date=new Date();
date.setTime(date.getTime()+(exdays*24*60*60*1000));
var expires="expires="+date.toGMTString();
document.cookie=name + "=" + value + "; " + expires + "path=/";
} // setCookie ends
如果您需要了解,我尝试使用通话setCookie("username","user",365);
。
编辑:添加了缺失的“=”,代码仍无效。
答案 0 :(得分:1)
您在名称和值之间缺少=
。此外,您需要在到期后使用分号
document.cookie= name + "=" + value + "; " + expires + ";path=/";
答案 1 :(得分:0)
如果您在本地运行此代码/文件,则chrome不会设置cookie,如果您将它放在远程服务器上,那么它(页面)将起作用。
出于测试目的,您可以从 xampp / htdocs运行此页面。
答案 2 :(得分:0)
我发现,如果您将Cookie设置得过快几次,Chrome就会停止更新Cookie。我没有在Chrome之外的任何浏览器上测试过这个。但我发现解决这个问题的唯一方法就是彻底退出Chrome并重新启动它。在此之后,该页面的cookie将为空白。
我认为这是Chrome的某种安全措施,以确保第三方/病毒/不良广告不会干扰您网站的Cookie。我根本无法找到并记录这一点,这只是猜测发生了什么。