app.cookieSession()中间件如何区分用户?

时间:2014-03-04 05:08:58

标签: node.js cookies express

问题:连接如何唯一标识存在活动sesson的每个用户? (它如何用正确的信息填充req.session变量)?

我查看了源代码,我不确定这是怎么发生的。

据我了解,connect在客户端的计算机上设置了一个真正的cookie,表示某些编码,然后用于唯一标识用户。实际的“cookies”存储在服务器端。

我不确定存储和检索的发生位置。

请参阅:http://www.senchalabs.org/connect/cookieSession.html

例如:第二个console.log表示实际的cookie。长字符串有'key'用于将用户映射到服务器上的正确cookie。第一个console.log是用户的cookie存储在服务器上。

//console.log(req.session)
{ loggedIn: true, //set using req.session.loggedIn
  cookie: 
   { path: '/',
     _expires: null,
     originalMaxAge: null,
     httpOnly: true } }

//console.log(req.cookies);
{ name: 'tobi', //Set using res.cookies()
  { connect.sess: 's:j:{}.RyNbcl0K94AFiRT63nqw3bH/thtzbWbDQRwtP45pmAE'}

0 个答案:

没有答案