CNODE源码 的session 过期的处理
当然过期肯定要从新登陆,CNODE的SESSION处理
// store session cookie
gen_session(user, res);
// private
function gen_session(user, res) {
var auth_token = encrypt(user._id + '\t' + user.name + '\t' + user.pass + '\t' + user.email, config.session_secret);
res.cookie(config.auth_cookie_name, auth_token, {path: '/', maxAge: 1000 * 60 * 60 * 24 * 30}); //cookie 有效期30天
}
cookie方法是怎么处理的?没找到文档… 哪位大神帮忙解答下?
7 回复
http 头:
Set-Cookie: xxxxxxxxxxxxxxxxxxxxx
然后请求上来,先读cookie 。。完事
你这是问session 还是 cookie …
用了一个这样的中间件。。 app.use(express.cookieParser());
接下来: https://github.com/cnodejs/nodeclub/blob/master/controllers/sign.js
看 282 行的处理吧。。。
最后说一下。。 源码是最好的文档。。。。。
1、首先,谢谢你的回答 。 2、我遇到的问题的情景是:Session在一分钟内有效(过期时间为一分钟)
secret:settings.db,
store:sessionStore,
cookie:{
maxAge:new Date(Date.now()+1000*60)
}
}));
一分钟后我再访问需要用户信息的页面时,由于session过期,需要重新登录,转到登录页后,提交取得数据后,用户信息放到session中,再转到刚才的页面时,页面的session 没有用户信息。就是不明白这,求解答,我应该怎么做? session过期后登录后的session信息
{ cookie:
{ path: '/',
_expires: Fri Jul 05 2013 13:51:15 GMT+0800 (中国标准时间)
originalMaxAge: -34298,
httpOnly: true },
error: null,
success: null,
user:
{ name: 'caojia',
password: 'daecdcc41afdbe9691a879aec2e8da50',
email: 'caojia' } }
```登陆后转到主页,获取session后却没有
```/home
{ cookie:
{ path: '/',
_expires: Fri Jul 05 2013 13:51:15 GMT+0800 (中国标准时间)
originalMaxAge: -34329,
httpOnly: true } }
求解答!
哈哈app.use(express.cookieParser());跟session store用什么没有关系吧,session依赖cookieParser倒是真的