我是javascript和node的新手,一直在尝试使用node.js和express创建应用程序。
我已经为错误设置了适当的回调函数,但它们并不是放置在每个地方,有时node.js服务器由于某些异常而停止。
建议使用'upstart'或'forever'来始终保持node.js运行,并在node.js停止时启动它。
似乎express通过以下链接提供了一个捕获所有异常的方法http://expressjs.com/guide.html#error-handling
app.use(function(err, req, res, next){
console.error(err.stack);
res.send(500, 'Something broke!');
});
现在对我来说它正在工作。然而,我在某个地方读到像这样捕获错误不是一个好主意,因为它可能会产生副作用,并且可能会使变量处于不一致的状态?同时,像这样捕获异常并不适用于所有情况,有些情况下服务器仍然会因为某些异常而停止。这是真的吗?
我的问题可能是这样的。
1)像上面那样处理异常是否会使一些变量处于不一致的状态? 2)是否存在一些异常仍会导致服务器停止?
谢谢和问候
Tuco