【问题标题】:Node.js Express handle errors functionNode.js Express 处理错误函数
【发布时间】:2013-09-13 13:56:19
【问题描述】:

在 express 应用中,我研究了我们可以使用以下方式处理错误:

// app.js
app.use(function (error, req, res, next) {
    // Handle errors
});

我的问题是:

  1. 如果出现错误,调用此函数是对的吗?如果没有错误,我无法调用此函数。我错过了什么吗?
  2. 有没有no错误会调用这个函数的情况?

谢谢

【问题讨论】:

    标签: javascript node.js express


    【解决方案1】:

    是的。 arity 为 4 的中间件(即:err, req, res, next)是错误处理程序,会在出现错误时调用。

    错误可能是您的其他中间件中未捕获的异常,或者是您在调用 next(err) 而不是不带参数的 next() 时引发的显式错误。

    有些情况下这些处理程序不会被调用。例如:异步块中发生的错误。

    【讨论】:

    • 非常有用的信息和快速回复。感谢@Nitzan Shaked。 +1
    猜你喜欢
    • 2013-03-20
    • 1970-01-01
    • 2021-12-23
    • 2014-12-15
    • 2016-12-29
    • 2012-10-30
    • 2012-03-02
    • 2021-12-15
    • 1970-01-01
    相关资源
    最近更新 更多