管理Restify中的错误

use*_*825 16 node.js restify

我如何使用NodeJS的Restify来管理我的Restful服务器构建的所有错误?例如内部错误,数据库错误,验证,必需的参数,未找到,athorizeds ...和uncaughtException并返回自定义响应浏览器?

我如何设计控制器之间的数据和错误份额?

谢谢

Eri*_*ott 30

  1. 在生成错误的位置立即处理您的错误.next(err)真的意思res.send(err).它不是替代品throw err.如果您需要记录并关闭,请将其传递给错误处理模块,而不是将其填充到next(err)吞咽的位置.
  2. server.on('uncaughtException'...是如何处理中间件/路由中引发的任何错误.只要您记住第一条准则,它就可以正常工作.'uncaughtException'将不会触发next(err)通话.
  3. formatters是自定义发送给用户的错误消息的方法.它们绝对不是处理错误的可行替代方法uncaughtException,因为大概一旦你到达那里,你就会向用户发送你希望他们看到的错误......不一定是最初产生的错误.见第1点.
  4. 对于与中间件无关的错误,请记住使用 process.on('uncaughtException'...

  • 感谢您撰写了这样一个有用的概述,一个可以改善文化恕我直言的文章. (4认同)