会话cookie的过期时间为“会话结束时”。 什么时候它到期还是永远活着?
答案 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=/";