Javascript Cookie定义路径

时间:2016-02-26 20:23:20

标签: javascript cookies

所以我是JavaScript的新手,我有点卡住了。 我想允许我的cookie在我的所有页面上工作。 我知道我需要在路径中添加“/”。唯一的问题是我得到的小脚本与那里的所有例子有点不同。

有人知道放在哪里吗?

var expdate = new Date();
expdate.setTime(expdate.getTime() + (24 * 60 * 60 * 1000 * 365));

function setCookie(name, value, expires, path, domain, secure) {
  var thisCookie = name + "=" + escape(value) + ((expires) ? "; expires=" +
    expires.toGMTString() : "") + ((path) ? "; path=" + path : "") + ((domain) ? ";domain=" + domain : "") + ((secure) ? "; secure" : "");
  document.cookie = thisCookie;

}

function showCookie() {
  alert(unescape(document.cookie));
}

function getCookieVal(offset) {
  var endstr = document.cookie.indexOf(";", offset);
  if (endstr == -1) endstr = document.cookie.length;
  return unescape(document.cookie.substring(offset, endstr));
}

function GetCookie(name) {
  var arg = name + "=";
  var alen = arg.length;
  var clen = document.cookie.length;
  var i = 0;
  while (i < clen) {
    var j = i + alen;
    if (document.cookie.substring(i, j) == arg) return getCookieVal(j);
    i = document.cookie.indexOf(" ", i) + 1;
    if (i === 0) break;
  }
  return null;
}

function MyNamer() {
  var now = new Date();
  now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000);
  var username = GetCookie("username");
  if ((!username) || (username == 'null')) {
    username = prompt("What is your name?:", "");
  }
  setCookie("username", username, now);
  if (username) {
    document.write(username);
    setCookie("username", username, now);

  } else
    document.write("Guest")
}

提前致谢!

1 个答案:

答案 0 :(得分:0)

好吧,从你的代码看,setCookie中的第4个参数就是你想要的那个:

setCookie(name, value, expires, path, domain, secure)

e.g。setCookie("myCookie", "myCookieValue", new Date(), "/")

你在使用什么cookie?您通过控制Cookie数据(包括路径)发出请求的网络服务器。如果您只是存储数据,那么您可以使用浏览器&#39; local/session storage个对象?