中间件未执行。 Nodejs的

时间:2019-06-26 15:14:08

标签: javascript node.js

我有一个在路由中被调用的中间件。

router.get('/:endpoint', authController.isLoggedIn, userController.getPages);

我需要检查用户是否已登录,然后从userController调用getPages。

但是isLogged中间件没有做任何事情...

exports.isLoggedIn = (req, res, next) => {
// first check if the user is authenticated
console.log(res.locals.user)
    if (true) {
      console.log(res.locals.user)
      next(); // carry on! They are logged in!
      return;
    }

  };

它应该在控制台上显示res.locals.user的值或未定义,但是没有。

有人知道为什么吗?

1 个答案:

答案 0 :(得分:0)

那是我犯的一个非常愚蠢的错误。

在authController.js文件的最后,我有另一个isLoggedIn定义

当我删除它并只留下我需要的那个时,一切都按预期进行。