我想知道是否有将内部服务器错误传播回用户的最佳实践。IE 不是实际错误(我记录了服务器端),但至少是 500 和一条消息。
我目前有:
app.use(function(err, req, res, next) {
console.error(err.stack);
res.send(500, 'Internal server error, please contact server administrator.');
});
这很好,除了如果抛出错误我的服务器崩溃(预期)。
所以我目前正在将所有错误传播回快速路线,即。
app.get('/api/users', function (req, res, next) {
User.getUsers(function (err, users) { // err comes back in function
// dont throw err here in callback
// throw err;
// Instead call next with the error to let express now something bad happened
if (err) return next(err);
res.json(users);
});
});
这很好用,只是我有 30 条具有相同代码行的路由。
if (err) return next(err);
没什么大不了的,但让我想知道是否有“更好”的方法。
谢谢。