如何从错误对象获取错误状态代码

时间:2019-10-08 14:20:17

标签: node.js express error-handling

我正在做我的try catch,并将所有错误状态代码设置为500,我想知道是否有可能在catch块内获取错误状态代码,例如:

代替此

catch(err){
    return res.status(500).send({
        message: err.message
    })
}

此:

catch(err){
    return res.status(err.statusCode).send({
        message: err.message
    })
}

我检查了文档,但对此一无所知

2 个答案:

答案 0 :(得分:1)

如果此err从 Error 类继承,则不可能。您可以实现包装程序,以将抛出的错误与状态500相关联。 参见https://nodejs.org/dist/latest-v10.x/docs/api/errors.html#errors_errors

答案 1 :(得分:0)

您无法执行“ err.statusCode”。 Error对象没有名为“ statusCode”的任何属性。

基本上,您必须根据执行结果确定应从服务器发送什么http statusCode