我正在使用express-socket.io-session
模块来处理会话,我有点不喜欢使用ajax并为它制作REST API,所以对于登录认证系统我使用了Socket.io。客户端向Socket.io发出用户名和密码(已加密),并检查用户是否已经过验证。如果是,则将用户变量添加到socket.handshake.session
,这相当于返回的数据库。
所以当我将socket.handshake.session.user与req.session.user进行比较时,存在着巨大的差异,就像这样 -
套接字会话返回 -
{ _id: 'Some-random-id',
email: 'some-random-email',
password: 'random-pass',
__v: 0,
payments: [],
accounts: [],
registeredOn: 2017-05-17T07:08:58.999Z }
快速会话返回 -
Session {
cookie:
{ path: '/',
_expires: null,
originalMaxAge: null,
httpOnly: true } }
我不知道为什么它没有更新req.session.user,感谢任何帮助。
答案 0 :(得分:0)
好像我输错了,我添加了用户变量socket.handshake而不是socket.handshake.session。