如何在快速路由的控制台中记录500状态错误?

时间:2017-01-16 16:17:07

标签: javascript node.js express

我希望看到记录的典型错误没有记录在我的快速路线中。 例如: router.get('/', function(req,res,next){ console.log(undefinedVariable) })

我希望得到一个错误:
ReferenceError:未定义undefinedVarialbe;

然而在router.get中我除了以外没有任何错误:

“GET / 500 3.641 ms - 478”

在我的控制台中,它正在进行调试。有没有办法让这些错误显示在控制台中?

2 个答案:

答案 0 :(得分:6)

在路线的最后,添加:

router.use(function (err, req, res, next) {
  if (err) {
    console.log('Error', err);
  } else {
    console.log('404')
  }
});

这将捕获之前处理程序未处理的所有路由,以及导致错误的所有路由。

答案 1 :(得分:0)

如果您使用express-generator,则app.js中应该已经有一个“错误处理程序” 只需将其添加到该处理程序的底部即可:

if (app.get('env') === 'development') console.log(err.stack);