如何从Node发送自定义错误消息,并使用catch显示它?

时间:2018-11-17 03:07:16

标签: javascript node.js express error-handling

我正在尝试从节点发送自定义错误消息,在前端接收它并显示它。

我正在尝试在服务器上做

res.status(500).send('Something broke!')

在客户端上,我正在做

try {
    const res = await axios.post(`${API_URL}/profiles/signup`, credentials)
} catch(err) {
    console.log("Sign up error:", err)
}

我想要在控制台中获得类似的内容:

Sign up error: Something broke!

但是我得到了:

Sign up error: Error: Request failed with status code 500
    at createError (createError.js:16)
    at settle (settle.js:18)
    at XMLHttpRequest.handleLoad (xhr.js:77)

如何访问正在发送的自定义消息?

2 个答案:

答案 0 :(得分:0)

您可以借助Error()创建错误

throw new Error({code: 500, message: 'Sign up error: Something broke!'});
throw send your error to the catch block automatically.

答案 1 :(得分:-1)

想通了:

console.log("Sign up error:", err.response.data)