jquery - 如何通过 jQuery 更新 cookie 的过期日期?

标签 jquery cookies jquery-plugins

我想通过 jQuery 更新 cookie 的过期日期。我正在使用jQuery cookie plugin

以下是我用来将到期日期设置为 future 8 小时的代码:

var date = new Date();
date.setTime(date.getTime() + (8 * 60 * 60 * 1000));
$.cookie('myCookie', $.cookie('myCookie'), { expires: date });

这创建了一个名称正确但属性错误的新 cookie:

  • 新 Cookie 的值为 [object Object],而不是原始的、以“&”分隔的键值 Cookie 字符串
  • 新 Cookie 中没有 SSL(安全)标志(旧 Cookie 的 SSL 标志设置为 true)
  • 过期时间设置为浏览器退出时,而不是 future 8 小时

通过 jQuery 只更新 cookie 过期日期的正确方法是什么?

最佳答案

这似乎有效:

var date = new Date();
date.setTime(date.getTime() + (8 * 60 * 60 * 1000));
var myCookieValue = $.cookie('myCookie');
$.cookie('myCookie', null);
$.cookie('myCookie', myCookieValue, { expires:date, secure:true, path:'/' });

关于jquery - 如何通过 jQuery 更新 cookie 的过期日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5753657/

相关文章:

jquery - 如果存在两个元素之一,则执行某些操作

jquery - slideToggle( ) 效果变坏了

ruby-on-rails - Rails 隐藏字段 session 可能吗?

javascript - Firefox 不会在@font-face 中声明的跨浏览器请求中发送 cookie

javascript - Jquery 插件。每个实例的选项

javascript - jquery自定义文件输入插件

javascript - 使用 jquery 检索原始 html,而不是呈现的 html

javascript - PHP 表单发布到自身而不显示完整路径

javascript - session 关闭后 Cookie 未被删除

jquery星级回调