fra*_*al5 5 javascript cookies
我正在尝试在javascript中使用此功能在我的网站上保存cookie
setCookie: function(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=/";
}
Run Code Online (Sandbox Code Playgroud)
奇怪的是,这在Chrome中不起作用.它虽然适用于Firefox.
如果我将分号更改为逗号而不是如下所示,则可以在Chrome中使用.但是属性被设置为cookie值的一部分,而不是浏览器可以读取的属性.
document.cookie = cname + "=" + cvalue + "," + expires + ",path=/";
Run Code Online (Sandbox Code Playgroud)
而且,这只是在上周开始发生的.有没有人注意到这一点?如果是这样,如果有解决方案吗?
谢谢.
更新:
日期格式似乎存在问题.我开始使用max-age而不是整数值秒,它现在工作正常,即使使用分号.
只有某些字段用分号进行谓词。根据 MDN文档:
以下任何 cookie 属性值都可以选择跟随键值对,指定要设置/更新的 cookie,并在前面添加分号分隔符:
属性值为:
;路径=路径
;域=域
;最大年龄=最大年龄
;过期=日期
;安全的
以下代码块适用于 Chrome 版本 58.0.3029.96(64 位)。
var cname = "MyCookie";
var cvalue = "kjqwrQR1515jetrQT26jo2u5";
var expires = " ;expires=" + Date.now() + 100000;
document.cookie = cname + "=" + cvalue + expires + " ;path=/";
Run Code Online (Sandbox Code Playgroud)
如果这种格式不适合您,您的cname cvalue, 和 的值是什么exdays?
| 归档时间: |
|
| 查看次数: |
907 次 |
| 最近记录: |