【问题标题】:NodeJS - ExpressJS error handling Patterns / PracticesNode JS - Express JS 错误处理模式/实践
【发布时间】:2016-04-07 18:16:33
【问题描述】:

我正在开发小型 MEAN 应用程序。我在 angularJS 部分(UI 部分)开发了良好的错误处理。但我仍然缺乏从后端部分正确处理错误 - ExpressJS(而不是 NodeJS)。 ExpressJS 还使用 Web 服务 (AWS)。

我已经阅读了关于“uncaughtException”、“域”的不同 stackoverflow 帖子。一些帖子建议使用永久或节点集群等软件包再次启动节点。但是我没有找到处理 NODE 错误的统一解决方案。

任何人都可以建议我使用一些最佳模式和实践来处理 NodeJS 错误,从而端到端地结束正确的工作流程。我正在同时寻找错误处理和日志记录机制。

非常感谢您。

【问题讨论】:

标签: angularjs node.js logging error-handling


【解决方案1】:

定义完所有路由后,您可以在 app.js 中使用全局错误处理程序。

https://expressjs.com/en/guide/error-handling.html

app.use(function (err, req, res, next) {
  console.error(err.stack)
  res.status(500).send('Something broke!')
})

在每个路由中,如果应用了任何条件或来自回调,则通过明确地说 next(err) 来抛出错误。

每当错误发生在回调之外或未定义的错误时,express 都会隐式抛出它们。如果你不想,你不需要单独处理它们。

【讨论】:

    猜你喜欢
    • 2012-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-22
    • 2018-06-22
    • 2016-06-16
    • 2017-03-07
    相关资源
    最近更新 更多