我试图在javascript中设置会话cookie,就像这样:

document.cookie = 'name=alex; path=/'

但是Chrome不会删除它,即使我退出浏览器,重新启动它。

我检查了Firefox和Opera,两者都按预期工作-它们在浏览器退出时删除会话cookie。

Chrome是否忽略了过期规则?

我检查了多个操作系统,发现会话cookie在Windows XP和Ubuntu的Chrome上被删除,但在Mac OSX Lion上没有。


当前回答

这个问题是因为你正在使用继续我离开的地方,并在谷歌Chrome浏览器关闭时继续运行后台应用程序(目前我的版本是96)。

请考虑关闭这些功能(以测试功能)。

其他回答

这可能是由于Chrome浏览器设置为继续你离开的地方。

进一步的阅读

Bug报告:Chrome不会删除临时cookie——也就是说,当我关闭所有浏览器Windows时,不会自动注销 问题128513铬:会话Cookies未清除时,Chrome进程关闭 问题128567:仅会话cookie无法删除

这个问题是因为你正在使用继续我离开的地方,并在谷歌Chrome浏览器关闭时继续运行后台应用程序(目前我的版本是96)。

请考虑关闭这些功能(以测试功能)。

我不得不在Chrome的高级设置下,不加勾选地这样做:

当谷歌浏览器关闭时继续运行后台应用程序 "继续刚才的地方" "启动时"

解决方案是使用sessionStorage,供参考:https://developer.mozilla.org/en-US/docs/Web/API/Window/sessionStorage

我只是遇到了这个问题。 我注意到,即使在我关闭浏览器后,仍有许多Chrome进程在运行。原来这些都是从我的Chrome扩展。

在高级设置下,我不勾选“当谷歌Chrome浏览器关闭时继续运行后台应用程序”,我的会话cookie开始正常工作。

对于我们所有开发人员来说,这仍然是一个令人头疼的问题,我们一直在编码,期望会话cookie在用户完成浏览时被清除。