Express.js会话在单独网络上的不同计算机上的用户之间是否存在?

nku*_*cki 2 javascript session node.js express

我在Node.js下遇到Express问题.我正在尝试使用会话来存储用户登录时的身份验证详细信息.我遇到的问题是,一旦用户登录,任何其他访问者也会在同一用户下登录,即使他们在单独的网络上的单独机器.

在我看来,它更像是应用程序数据存储而不是会话存储.难道我做错了什么?在我看来,就像我在某个地方做些蠢事!

我在app.configure中使用此代码:

app.use(express.cookieParser());
app.use(express.session({secret: 'supersecretkeygoeshere'}));
Run Code Online (Sandbox Code Playgroud)

我正在设置我的会话变量,如下所示:

var user = express.session.userId;
Run Code Online (Sandbox Code Playgroud)

干杯,

弥敦道

tim*_*ley 9

这不是你如何使用会话,在请求对象上使用session var:

app.get('/login', function(req, res){
  user = loadUser(req.body.username, req.body.password)
  req.session.userId = user.id
})
Run Code Online (Sandbox Code Playgroud)

请参阅docs:http: //expressjs.com/guide.html#session-support

希望有所帮助:D

  • 啊哈,谢谢!这是req.session而不是express.session.有道理,回想起来我不知道我认为它是如何表达的! (3认同)