如何在 Jquery 中设置 cookie 在 1 分钟或 30 秒后过期?

问题描述 投票:0回答:4

如何将 cookie 设置为在 30 秒或 1 m 后过期? 这是我的代码:

$.cookie('username', username, { expires: 14 });  // expires after 14 days
jquery cookies jquery-cookie
4个回答
43
投票

1分钟,您可以使用:

var date = new Date();
date.setTime(date.getTime() + (60 * 1000));
$.cookie('username', username, { expires: date });  // expires after 1 minute

30秒内,您可以使用:

var date = new Date();
date.setTime(date.getTime() + (30 * 1000));
$.cookie('username', username, { expires: date });  // expires after 30 second

3
投票
var date = new Date();
date.setTime(date.getTime() + (30 * 1000)); //add 30s to current date-time 1s = 1000ms
$.cookie('username', username, { expires: date });  //set it expiry

3
投票

您可以按以下方式使用

1 minute and 30 seconds

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

//3.5* 60 * 1000 = 1 minute and 30 seconds

//30秒

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

3
投票

来源:http://www.informit.com/articles/article.aspx?p=24592&seqNum=3

您需要以秒为单位创建到期日期 - 不仅如此,而且 它必须是自 1970 年 1 月 1 日以来的几秒钟内。您可能想知道如何 当您需要时,我们会计算出您的到期日期 确定它们是关于 1970 年 1 月 1 日。这是 time() 功能进来了。

time() 函数返回自 1 月 1 日以来的秒数, 1970. 如果你想创建一个 30 天后过期的 cookie,你需要执行以下操作:

  • 获取自 1970 年以来的秒数。

  • 确定您希望 cookie 持续的秒数。

  • 将自 1970 年以来的秒数添加到您希望 cookie 持续的秒数。

因为我们知道一天有 86,400 秒(60 秒 x 60 分钟 x 24 小时),所以您可以创建一个 30 天后过期的 cookie,如下所示:

setcookie("username", "chris", time() + (86400 * 30));

此功能会在用户的浏览器上放置 30 天的 cookie。在这 30 天内的任何时候,您都可以从脚本中访问变量 $username,它将返回(在上面的示例中)chris。

© www.soinside.com 2019 - 2024. All rights reserved.