4

根据连接文档,当浏览器关闭时会话应该过期:

默认情况下cookie.maxAgenull,这意味着没有设置“过期”参数,因此 cookie 成为浏览器会话 cookie。当用户关闭浏览器时,cookie(和会话)将被删除。

我正在使用 express 3 和connect-mysql进行会话存储(也尝试使用 connect-mongo 并且相同),这就是我设置会话数据的方式。

 req.session.userid = results[0].id;
 req.session.ip = req.connection.remoteAddress;
 req.session.useragent = req.headers['user-agent'];
 req.session.is_logged_in = true;

出于某种原因,这一切都很好,除了在 google chrome 浏览器中(这是在 OS X Lion 中。我现在无法在 win 或 linux 下进行测试)。

有人在谷歌浏览器中遇到过这个问题并且知道解决方法吗?

4

1 回答 1

2

这是一个相当疯狂的猜测,但如果是这样,我不会太惊讶。如果您安装了任何使用此功能的扩展程序,Google chrome 将继续在后台运行。如果是这种情况,则应重置会话中的注销登录。

如果不是这样,您能否打开开发人员工具 ( cmd+alt+i) 并从那里复制有关 cookie 的所有信息 ( resources-> cookies-> yourdomain.com)。(尤其是Expires专栏里写的,因为应该说Session

于 2012-06-13T19:53:33.803 回答