繁体   English   中英

Chrome未将Cookie路径设置为root

[英]Chrome not setting cookie path to root

我使用以下代码在Javascript中设置cookie:

setCookie('cart_items','product_name');


function setCookie(name,value,days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+value+expires+"; path=/";
}

但是Chrome路径中的cookie路径未设置为root(/)。 相反,它被设置为从执行网页的路径!!

我用IE和FF测试过。 它适用于这两种浏览器....

Chrome可能有什么问题,或者我正在使用的cookie创建代码存在问题?

在Chrome中(16.0.912.63)

路径:/ xxxxxxxx / xxxxxxx

在FF(6.0)

路径:/

在IE中(9)

路径:/

发生这种情况的原因是因为chrome默认情况下不允许在本地文件上设置cookie。 有关详细信息,请参阅此答案: https//stackoverflow.com/a/347997/1324019 (来自答案的文字)

Chrome不支持本地文件的Cookie(或者像Peter Lyons所提到的,localhost *),除非您使用--enable-file-cookies标志启动它。 您可以在http://code.google.com/p/chromium/issues/detail?id=535上阅读有关该讨论的讨论。

*如果您直接使用本地IP地址(127.0.0.1),Chrome 支持Cookie。 所以在localhost的情况下,这可能是一个更容易的解决方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM