简介
2018-02-24 16:16 更新
NodeJS的错误处理让人痛苦,在很长的一段时间里,大量的错误被放任不管。但是要想建立一个健壮的Node.js程序就必须正确的处理这些错误,而且这并不难学。如果你实在没有耐心,那就直接绕过长篇大论跳到“总结”部分吧。
这篇文章会回答NodeJS初学者的若干问题:
- 我写的函数里什么时候该抛出异常,什么时候该传给callback, 什么时候触发
EventEmitter
等等。 - 我的函数对参数该做出怎样的假设?我应该检查更加具体的约束么?例如参数是否非空,是否大于零,是不是看起来像个IP地址,等等等。
- 我该如何处理那些不符合预期的参数?我是应该抛出一个异常,还是把错误传递给一个callback。
- 我该怎么在程序里区分不同的异常(比如“请求错误”和“服务不可用”)?
- 我怎么才能提供足够的信息让调用者知晓错误细节。
- 我该怎么处理未预料的出错?我是应该用
try/catch
,domains
还是其它什么方式呢?
这篇文章可以划分成互相为基础的几个部分:
- 背景:希望你所具备的知识。
- 操作失败和程序员的失误:介绍两种基本的异常。
- 编写新函数的实践:关于怎么让函数产生有用报错的基本原则。
- 编写新函数的具体推荐:编写能产生有用报错的、健壮的函数需要的一个检查列表
- 例子:以
connect
函数为例的文档和序言。 - 总结:全文至此的观点总结。
- 附录:Error对象属性约定:用标准方式提供一个属性列表,以提供更多信息。
以上内容是否对您有帮助:
更多建议: