设置cookie将无法正常运行javascript

时间:2014-02-07 18:00:48

标签: javascript cookies

我正在使用下面的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);

编辑:添加了缺失的“=”,代码仍无效。

3 个答案:

答案 0 :(得分:1)

您在名称和值之间缺少=。此外,您需要在到期后使用分号

 document.cookie= name + "=" + value + "; " + expires + ";path=/";

答案 1 :(得分:0)

如果您在本地运行此代码/文件,则chrome不会设置cookie,如果您将它放在远程服务器上,那么它(页面)将起作用。

出于测试目的,您可以从 xampp / htdocs运行此页面。

答案 2 :(得分:0)

我发现,如果您将Cookie设置得过快几次,Chrome就会停止更新Cookie。我没有在Chrome之外的任何浏览器上测试过这个。但我发现解决这个问题的唯一方法就是彻底退出Chrome并重新启动它。在此之后,该页面的cookie将为空白。

我认为这是Chrome的某种安全措施,以确保第三方/病毒/不良广告不会干扰您网站的Cookie。我根本无法找到并记录这一点,这只是猜测发生了什么。