使用自定义错误处理程序,特别是ts-custom-error,但即使我自己滚动,如果在有人输入错误的url /端点时要处理的路由后抛出以下错误,
app.use((req, res, next) => {
throw HttpError.fromCode(404)
});
app.listen(port, err => {
if (err) {
return console.error(err);
}
return console.log(`server is listening on ${port}`);
});
*编辑添加了其他代码
https://github.com/adriengibrat/ts-custom-error/blob/master/src/example/http-error.ts
我得到了错误消息,并且堆栈正常,一切都可以在邮递员和浏览器中查看正文消息,但是在chrome上的网络中和标头中,它仍然显示状态代码500。我缺少什么?
您可以检查控制台/终端的日志吗?500(内部服务器错误)表示您的服务器有问题。通常,未处理的异常。
此块之后还有其他代码吗?如果没有,您将thrown error
永远不会在任何地方处理,从而导致500错误。
您可以改用以下方法:
res.status(404).send({ error: 'Your special error message here!' });
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句