错误处理程序:
//error handler
app.use(function(err, req, res, next){
console.error({error: err});
//res.status(500);
res.format({
'text/html': function() {
res.render('error', {error: err.message});
},
'application/json': function() {
res.json({'error': err.message});
}
});
});
路线w / 404:
exports.someRoute = function(req, res, next) {
...
if (!page) {
return next(new Error('Page not found.')));
}
...
};
在错误处理程序中,如何获得相应的错误状态代码?
答案 0 :(得分:0)
您需要以某种方式将该信息放入错误对象中,或者使用error.status
等简单属性,或者将其基于类error instanceof NotFound
等类层次。
然而,404是如此常见,我只是添加逻辑req
来处理它req.notFound(message)
或甚至只使用next('route')
处理404的最后一条路线
无论如何,有很多选择。