2012-06-09 53 views
4

根据connects documentation时关闭浏览器会话应该过期:谷歌浏览器会话过期= NULL不工作

默认cookie.maxAgenull,这意味着没有“到期”参数设置 所以饼干变成浏览器会话cookie。当用户关闭 浏览器时,cookie(和会话)将被删除。

我使用快递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; 

这一切工作正常,除了在谷歌浏览器由于某种原因(这是在OS X Lion.I有没有可能赢下或Linux测试现在)。

任何人都有这个问题在谷歌浏览器,并知道一种方法来解决它?

回答

2

这是一个相当疯狂的猜测,但我不会太惊讶,如果是这样。如果您有任何使用此安装的扩展程序,谷歌浏览器将继续在后台运行。如果在会话中注销日志应该重置之后就是这种情况。

如果不是它,请您打开开发者工具(cmd+alt+i)和复制有关的cookie从那里的所有信息(resources - >cookies - >yourdomain.com)。 (尤其是Expires专栏写的是什么,因为应该说是Session

+0

现在好了,它突然就起作用了。删除了所有扩展名,重新安装了Chrome。现在它按预期工作。但是,如果用户安装了扩展程序,有没有办法来防止这种情况?因为这会搞砸了会议。以用户登录和注销方式添加的新会话等等。有人知道为什么它的行为如此吗? – georgesamper

+0

尝试一个接一个地安装扩展,也许你会发现一个特定的扩展,在那种情况下搞乱了你的cookies,因为* normal扩展不应该导致这种情况。 –

+0

我会这样做的。并发布结果在这里,当我发现至极导致问题。谢谢 – georgesamper