繁体   English   中英

jQuery cookie到期时间

[英]jQuery cookie expiry time

我能够使用jQuery设置一个cookie,并重定向到登陆页面,但我不知道如何将cookie的有效期设置为少于一天(例如15分钟)。 我无法在插件文档中找到解释

这是我的代码:

$(function() {
    var COOKIE_NAME = 'splash-page-cookie';
    $go = $.cookie(COOKIE_NAME);
    if ($go == null) {
        $.cookie(COOKIE_NAME, 'test', { path: '/', expires: 1 });
        window.location = "/example"
    }
    else {
        // do nothing
    }
});

谢谢你的帮助!

编辑:我能够通过跳过过期将cookie设置为会话cookie,我很好,但它并不完美,如果你们有一些想法,我将不胜感激。

plugins expires选项接受数字或日期对象。

如果传递了一个数字,那就是cookie到期之前的天数,但是如果传递了一个日期对象,那么它就是cookie过期的时间和日期,所以你可以做

var expDate = new Date();

expDate.setTime(expDate.getTime() + (15 * 60 * 1000)); // add 15 minutes

$.cookie(COOKIE_NAME, 'test', { path: '/', expires: expDate });

一天中的一小部分应该有效,所以例如一天有1440分钟,所以如果你想让cookie在15分钟后到期,你可以简单地将分钟除以1440,如下所示:

$.cookie('foo', 'bar', {expires: 15/1440});

这也可以使用几个小时,所以例如,如果您希望cookie在2小时内到期,您可以执行以下操作:

$.cookie('foo', 'bar', {expires: 2/24});

第三种选择是传递日期对象,如下所示:

var expire = new Date();

//set expiry to current time plus 15 minutes in milliseconds
expire.setTime(expire.getTime() + (15 * 60 * 1000)); 

$.cookie('foo', 'bar', {expires: expire});

希望这可以帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM