1

所以我想做的是当用户访问该页面时,它将从 mongodb 数据库中获取他们的用户配置文件,然后使用用户配置文件更新用户会话。

现在我正在使用以下包进行会话:
- express-socket.io-session(允许我通过 socket.io 访问 cookie)
- express-session
- connect-mongo(允许我将会话存储在 mongodb 数据库中)

这是我试图用来更新用户 cookie 的方法

req.session.reload(function(err) {
  // session updated 
})
4

1 回答 1

0

通常,您将对象(例如用户配置文件)保存在会话中,并且会话存储在 mongo 中。
客户端上的 Cookie 仅包含过期日期和会话 ID。对于每个请求,您都会获得带有会话 ID 的 cookie,并且可以通过此 ID 从 mongo 获取会话。
当您更新会话中的任何字段时,它将在 mongo 中重新保存。
所以你不需要“重新加载”。您可以只分配 like req.session.user = user
文档

于 2017-09-05T12:57:03.230 回答