过期时间为“会话结束”的Cookie何时到期?

时间:2010-11-09 09:23:36

标签: php cookies

会话cookie的过期时间为“会话结束时”。 什么时候它到期还是永远活着?

4 个答案:

答案 0 :(得分:35)

会议结束时到期的Cookie '从用户的角度来看无法预测到期!

在使用Safari的iOS上,只要您切换应用,它们就会过期!

在使用Chrome的Android上,当您关闭浏览器时,不会过期。

在运行Chrome的Windows桌面上,当您关闭浏览器时,它们会过期。当你关闭网站标签时,情况并非如此;当你关闭所有标签时。如果还有其他浏览器窗口打开,它们也不会过期。如果用户将Windows应用程序作为Windows运行,他们甚至可能不知道它们是浏览器窗口。所以你的cookie的生命取决于用户使用一些看似无关的应用程序做了什么。

答案 1 :(得分:29)

当您使用setcookie时,您可以将到期时间设置为0或者只是省略参数 - 然后cookie将在会话结束时到期(即,当您关闭浏览器时)

答案 2 :(得分:8)

用户会话结束意味着关闭浏览器。

阅读本文:http://en.wikipedia.org/wiki/HTTP_cookie#Expires_and_Max-Age

答案 3 :(得分:7)

只是为了纠正mingos'回答:

如果您将到期时间设置为0,则根本不会创建Cookie。我至少在Google Chrome上对此进行了测试,当设置为0时就是结果。我想,cookie会在创建后立即过期。

要设置一个cookie,使其在浏览会话结束时过期,只需完全OMIT到期参数。

示例:

而不是:

document.cookie = "cookie_name=cookie_value; 0; path=/";

只需写下:

document.cookie = "cookie_name=cookie_value; path=/";
相关问题