【发布时间】:2010-12-22 06:17:42
【问题描述】:
如何在 30 分钟内过期 Cookie?我正在使用 jQuery cookie。 我可以做这样的事情。
$.cookie("example", "foo", { expires: 1 });
这是 1 天。但是我们如何将到期时间设置为 30 分钟。
【问题讨论】:
标签: javascript jquery cookies
如何在 30 分钟内过期 Cookie?我正在使用 jQuery cookie。 我可以做这样的事情。
$.cookie("example", "foo", { expires: 1 });
这是 1 天。但是我们如何将到期时间设置为 30 分钟。
【问题讨论】:
标签: javascript jquery cookies
30 分钟是30 * 60 * 1000 毫秒。将其添加到当前日期以指定未来 30 分钟后的到期日期。
var date = new Date();
var minutes = 30;
date.setTime(date.getTime() + (minutes * 60 * 1000));
$.cookie("example", "foo", { expires: date });
【讨论】:
如果您使用 jQuery Cookie (https://plugins.jquery.com/cookie/),则可以使用小数点或分数。
一天是1,一分钟就是1 / 1440(一天有1440分钟)。
所以 30 分钟是30 / 1440 = 0.02083333。
最终代码:
$.cookie("example", "foo", { expires: 30 / 1440, path: '/' });
我添加了path: '/',这样您就不会忘记cookie 设置在当前路径上。如果您在/my-directory/ 上,则仅为该目录设置 cookie。
【讨论】:
我在让上述代码在 cookie.js 中工作时遇到了问题。以下代码设法为我的实例中的 cookie 过期创建正确的时间戳。
var inFifteenMinutes = new Date(new Date().getTime() + 15 * 60 * 1000);
【讨论】: