JavaScript会话何时过期?如何在会话结束时删除cookie?

JavaScript会话何时过期?如何在会话结束时删除cookie?,javascript,session,cookies,expired-cookies,Javascript,Session,Cookies,Expired Cookies,我想在用户关闭选项卡/浏览器后删除名为“username”的cookie。我使用下面的代码来检测用户是否关闭,是否应该删除cookie。但是cookie还在那里。为什么? 在浏览器控制台资源中,它将cookie到期字段显示为“会话”。会话何时结束 // delete cookies when user closes browser/tab $(window).unload(function() { $.removeCookie('username', { path: '/' }); });

我想在用户关闭选项卡/浏览器后删除名为“username”的cookie。我使用下面的代码来检测用户是否关闭,是否应该删除cookie。但是cookie还在那里。为什么?

在浏览器控制台资源中,它将cookie到期字段显示为“会话”。会话何时结束

// delete cookies when user closes browser/tab
$(window).unload(function() {
   $.removeCookie('username', { path: '/' });
});

要创建cookie,js是:

$.cookie('username', 'your value');
要删除相同的cookie,代码为:

$.removeCookie('username', '', { path: '/'});
您缺少第二个参数,即值,因此在本例中,cookie将在会话结束时过期

我使用的图书馆是:

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.min.js"></script>
并删除:

Cookies.remove('username');
默认情况下,如果未指定过期日期,则在用户关闭浏览器时删除Cookie(会话Cookie)


因为浏览器可以使用alf+f4或X或kill信号关闭,所以您只能处理和依赖cookie过期时间。

“会话何时结束?”——通常是在关闭整个浏览器程序时,而不仅仅是关闭单个选项卡/窗口时。(虽然在大多数浏览器中处于私有模式,但情况有所不同。)@CBroe一旦用户关闭浏览器选项卡或离开网站,我如何删除我的cookie?如果用户导航到其他网站,然后按“上一步”按钮,该怎么办?你真的要让那个人再次登录吗!?jQueryCookie是。
Cookies.set('username', 'value');
Cookies.remove('username');