【问题标题】:Set date in cookie expiration设置 cookie 过期日期
【发布时间】:2017-03-10 17:58:41
【问题描述】:

如何将 cookie 设置为在以下日期过期:2038 年 1 月 19 日?

如果我这样尝试,则未设置 cookie:

$.cookie('test', true, {expires: "2038-01-19, 03:14:08 UTC"});

【问题讨论】:

标签: jquery jquery-cookie


【解决方案1】:

我找到了解决办法:

  var date = new Date();
  date.setFullYear(2038);
  $.cookie('test', true, {expires: date});

【讨论】:

    【解决方案2】:

    使用这个

    document.cookie = "username=John Doe; expires=Tue, 19 Jan 2038 12:00:00 UTC";
    
    function setUserConfigInCookie(){
      var expireDate = new Date;
      expireDate.setDate(expireDate.getDate() + 7); // It expires in a week
    
      var options = {
        path: '/',
        expiresAt: expireDate
      }
    
      userConfig = {}; // This is a valid JSON object that you need to save in a cookie
      $.cookies.set( 'userConfig', userConfig, options);
    
      // console.log('Expires=' + expireDate.toGMTString());
    }
    

    【讨论】:

      【解决方案3】:

      计算从当前日期到您希望 cookie 过期的日期的天数,然后设置“天”值以设置 cookie 过期时间。

      var start = new Date();
      var end = new Date("19 Jan 2038");
      
      // end - start returns difference in milliseconds 
      var diff = new Date(end - start);
      
      // get days
      var days = diff/1000/60/60/24;
      

      【讨论】:

        【解决方案4】:

        您不能这样做,因为这是浏览器处理日期方式的错误。

        https://bugzilla.mozilla.org/show_bug.cgi?id=27070

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-02-19
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-02-20
          • 2019-03-07
          • 1970-01-01
          相关资源
          最近更新 更多