Javascript 我的Express-Socket.io-Session更新,但Express-Session没有';t更新

Javascript 我的Express-Socket.io-Session更新,但Express-Session没有';t更新,javascript,node.js,session,express,socket.io,Javascript,Node.js,Session,Express,Socket.io,我正在使用express socket.io session模块来处理会话,我有点不喜欢使用ajax并为其制作RESTAPI,所以对于登录身份验证系统,我使用了socket.io。客户端将用户名和密码(加密)发送到Socket.io,并检查用户是否经过验证。如果是,它会向socket.handshake.session添加一个用户变量,该变量相当于数据库返回的值 所以,当我比较socket.handshake.session.user和req.session.user时,会发现一个巨大的差异,就

我正在使用
express socket.io session
模块来处理会话,我有点不喜欢使用ajax并为其制作RESTAPI,所以对于登录身份验证系统,我使用了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,非常感谢您的帮助。

似乎我输入了一个错误,我添加了用户变量socket.handshake而不是socket.handshake.session。

您应该检查一下。这没有帮助,我已经在共享会话,但问题是会话被更新为socket.io会话,而不是req.session变量