我在2个不同的页面上使用相同的脚本来设置相同的cookie。我的假设是,即使两个页面(稍微)是不同的路径,它们也只是覆盖cookie而不是将条目复制到其中。
我的第一页路径是:
example.com/classifieds/businesses
我的第二页路径是:
example.com/classifieds/businesses/search
所以,我的问题是,是否依赖于页面页面;我可以强制它们覆盖现有值,而不是将自己的页面特定值写入cookie吗?
以下是我的cookie与重复项的相似之处:
domain=.example.com; path=/; bdView=column; bdView=detail; domain=.example.com;
设置域的代码(位于头文件中)
var domain = window.location.host.split(/\.(.+)/)[1];
document.cookie = "domain=." + domain;
document.cookie = "path=/";
设置bdView的代码(在我在两个页面中都包含的单独的js文件中)
function setCookie(view) {
switch (view) {
case "column":
document.cookie = "bdView=column";
break;
case "list":
document.cookie = "bdView=list";
break;
case "detail":
document.cookie = "bdView=detail";
break;
}
}
答案 0 :(得分:1)
所以,我只是错误地使用cookies。我认为那个领域&路径只是他们自己的东西,但你实际上应该用他们想要设置的东西来设置它们。
所以,它应该是这样的:
function setCookie(view) {
var domain = window.location.host.split(/\.(.+)/)[1];
switch (view) {
case "column":
document.cookie = "bdView=column; path=/; domain=" + domain;
break;
case "list":
document.cookie = "bdView=list; path=/; domain=" + domain;
break;
case "detail":
document.cookie = "bdView=detail; path=/; domain=" + domain;
break;
}
}