express4 异步错误处理 node出错不崩溃
发布于 9 年前 作者 pense 3897 次浏览 最后一次编辑是 8 年前 来自 问答

大家好,有一问题,由于路由解析出现错误(人为bug,或不可预见bug),经常造成生产环境502错误,导致node服务器挂掉,影响极大。 比如if(result.status =,= 0)这种可发现的"愚蠢"错误;比如请求返回json数据data.createTime为" ",但却对空函数进行转化utils.formatDate(data.createTime)(formatDate未进行非空处理),一出错服务器进程就崩溃。 虽然这种人为的bug可以避免,但是能不能有一种错误处理,类似同步的try…catch…出错时该请求忽视掉,访问其他页面不受影响,比如我请求网站A页面时A路由出错,但访问网站B页面正常。。。因为在生产环境,实在受不了502这种崩溃性错误 ps:项目前端用express4,数据由Java后台提供。

5 回复

生产环境下,这种错误出不了 beta 吧

这充分说明测试没做好,BDD必须实践。

可以考虑使用`domain`模块

来自炫酷的 CNodeMD

可以使用domain来捕捉异步错误,还可以使用process的全局捕捉错误

@Hi-Rube 恩,谢谢!

回到顶部