CorseHandler内部的错误消息消失了

时间:2018-12-10 12:33:10

标签: javascript post

我已经读过Javascript中的诺言,您的错误消息会被if you do not explicitly catch them吞没,但是在这里我没有任何诺言,但它仍在发生。有谁知道为什么会这样以及如何解决?

app.post(`/register-user`, (req, res) => {
    corsHandler(req, res, async () => {
        try {
            throw new Error("Oh look, a dissapearing error")
        }
        catch (error) {
            res.status(500).send({
                success: false,
                message: "Error creating new user",
                error: error
            });
        }
    })
});

响应

{
    "success": false,
    "message": "Error creating new user",
    "error": {}
}

更新

感谢@ mrdeadsven,我看到Error的确出现了,只是不知道为什么它不会将其发回。

enter image description here

我已尝试将错误归类,但仍未通过响应

  error:  querystring.stringify(error),

更新2:可以运行,但是不知道为什么。

我刚刚将错误添加到变量中,并将该变量添加到响应消息中,现在它可以工作了。我不知道为什么。

const _error: string = error

const responseObj: ReqResponse = {
                success: false,
                message: "Error 4",
                error: _error,
                responseCode: ResponseCodeEnum.internalServerError.code
            }

1 个答案:

答案 0 :(得分:0)

您错过了新操作员:

抛出错误(“哦,看起来..”);