nodeclub代码中的疑问?
发布于 3年前 作者 jasonzheng72 1625 次浏览

看了nodeclub的代码,

app.js中有两句话: // custom middleware app.use(routes.auth_user); app.use(express.csrf());

sign.js中有auth_user的设置 exports.auth_user = function(req,res,next)

这个起什么作用,是为了保持用户登录状态吗?哪位大侠解释一下。

3 回复

我觉得是在整个过程中判断用户状态的功能。

我开始理解可能近似于jsp中的过滤器,但测试了之后,并没有看到效果。 另外就是记录用户的登录状态,根据登录状态来过滤请求不知如何处理好?

确实就是相当于jsp中的过滤器,每次请求都会运行auth_user函数,如果是首次登录首先判断有没有对应的session,没有的话则去获取对应的cookie,从中取出相应的用户id,若取得id则查询mongodb,得到对应的user实体,同时给req.session.user属性赋值,如下:

req.session.user = user;

这样后续操作在后台就可以通过session来获取对就的用户凭证呢。

回到顶部