Express:如何将请求传递给特定处理程序?

时间:2016-07-20 13:46:23

标签: node.js express routing

在我的Express应用程序中,我在根路径上有一个all('/', ...)。在这里,我检查一个失败标志,并希望将请求传递给next处理程序,或者如果出现问题,例如无法建立数据库连接,或者我想将请求直接传递给{{ 1}}路由,但我不想重定向。

可以直接将请求表达到/error,还是必须显式调用该路由的处理程序?

/error

1 个答案:

答案 0 :(得分:2)

您可以单独为错误路由定义处理程序并直接调用它而不是调用next,但您真正想要的是define error handling middleware。类似的东西:

app.all('/', (req, res, next) => {
  if(errors) {
    next(errors)
  } else {
    next()
  }
})
app.use((err, req, res, next) => { ... })