Javascript设置cookie与路径= /

时间:2016-09-27 08:02:15

标签: javascript cookies

我正在创建用于在mysite上共享的cookie。

这是创建此类Cookie的代码:

var setCookie = function(cname, cvalue, exdays) {
    var d = new Date();
    d.setTime(d.getTime() + (exdays*24*60*60*1000));
    var expires = "expires="+d.toUTCString();
    var path ="path=/;";
    document.cookie = cname + "=" + cvalue + ";" + expires + ";" + path;
};

看起来非常简单,我正在使用path=/表示我想在我的网站上创建或修改相同的Cookie。

问题是它正在为每个URL创建一个cookie。使用Mozilla插件,我可以看到以下内容:

Cookie Name         Value   Path
timer_is_enabled    true    /
timer_is_enabled    false   /foo
timer_is_enabled    true    /foo/bar

这导致了我的许多错误,因为正在访问的变量不是唯一的,而是许多独立的变量。

我知道为什么会出现这种行为?

2 个答案:

答案 0 :(得分:1)

这个功能对我来说没问题。如下:

@Override
public Translation get(int id) {
    return sessionFactory.openSession().get(Translation.class, id);
}

我得到了以下内容:

enter image description here

答案 1 :(得分:1)

您的代码应该按预期工作,至少关于路径属性。那些其他cookie可能是早期测试中的残余(遗憾的是,通常无法跟踪给定cookie的创建日期,因为浏览器通常不会保留此类信息)。

我建议您从浏览器中删除所有当前的Cookie,然后重试。