无法设置cookie过期日期

时间:2016-12-26 14:24:27

标签: javascript angularjs cookies

以下是设置Cookie到期时间的代码。两个cookie值&some; someToken'和' wofilter'是为浏览器设置的,但两种情况下的到期日期都不同。(案例2设置为我遇到问题的会话)

我想将Cookie设置为有效期两天。我发现的一个区别是,一个使用简单的字符串,而另一个使用字符串化的对象。

有人可以解释为什么他们的行为不同

1。案例一

exp = new Date(now.getFullYear() + 1, now.getMonth(), now.getDate())
console.log exp
$cookies.put 'someToken', 'blabla', expires: exp

2。案例二

expireDate = new Date()
expireDate.setDate(expireDate.getDate() + 1)

$cookies.put 'woFilter' + $routeParams.id,  JSON.stringify testObj, expires: exp

提前致谢:)

我附加了一张显示浏览器Cookie详细信息的图片

enter image description here

1 个答案:

答案 0 :(得分:0)

您可以编写这样的函数并通过参数调用它。

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