每当我对我的应用程序进行更改时,nodemon都会重新启动整个应用程序,但每次发生这种情况时,我的会话都会被销毁。这很烦人,因为每次我对我的应用程序进行更改时都必须登录。我该如何避免这种情况发生?
我正在使用基于cookie的会话,因为我只存储用户ID。我的设置看起来像这样(在coffeescript中):
app.use express.cookieParser()
app.use express.session
secret: 'mysecretkey'
app.use express.csrf()
我通过这样做来保存我的会话:
req.session.userid = user._id.toHexString() # it's a mongoDB ObjectID
req.session.save()
答案 0 :(得分:5)
默认情况下,expresssJS使用内存存储进行会话,因此当您的应用程序重置时,内存会话也是如此。
由于您使用的是mongoDB,我建议您使用mongoDB进行会话存储,或者使用redis(我没有尝试使用节点)。
您可以看到有关如何使用express和mongo设置会话支持的问题: