为什么节点快递中的req.session中有cookie?

时间:2013-12-17 23:50:30

标签: node.js session cookies express

这更符合我的理解。为什么req.session中有一个cookie对象? 我使用req.session来存储登录状态和用户名。 req.session中的cookie对象与客户端cookie中的cookie属性相同,由express.parseCookie放置但没有sessionID。 任何人都可以解释为什么它在那里? 它不能用于识别cookie和会话,因为已经由cookie值和会话ID(req.session.ID)创建了,或者我错了吗?

- req.session --> 
{ cookie: 
{ path: '/',
 _expires: null,
 originalMaxAge: null,
 httpOnly: true },
  loggedIn: true,
  username: 'luidpold' }

1 个答案:

答案 0 :(得分:3)

为方便起见。它是与会话相关联的cookie,您可以查询/修改它。

Express中的会话处理程序来自Connect。 documentation for Connect说:

  

会话#饼干

     

每个会话都附带一个唯一的cookie对象。这可以让你   改变每位访客的会话cookie。例如,我们可以设置   req.session.cookie.expires为false以启用Cookie   只有用户代理的持续时间。

     

会话#MAXAGE

     

或者req.session.cookie.maxAge将返回剩余时间   以毫秒为单位,我们也可以重新分配一个新值来调整   适当的.expires财产。