我知道,错误处理程序中间件就像最后一个人,在出错时给用户一个非常通用的消息。比如返回500服务器错误。但我认为这对用户没有帮助。一旦我们捕捉到路由或中间件中的错误,最好为用户提供更具体的错误消息。因此,我认为我们不应该在这种情况下使用错误处理程序中间件?我说的对吗?
发布于 2022-02-21 11:19:23
您可以重写默认错误处理程序,以向用户提供在您自己的自定义错误类中定义的更具体的错误消息。
const { CustomAPIError } = require('../errors/customErrors');
const errorHandler = (error, req, res, next) => {
// for debugging purposes
console.log('[ERROR]: ', error);
if (error instanceof CustomAPIError)
return res.status(error.statusCode).json({message: error.message});
res.status(500).json({message: "Internal Server Error"});
}
module.exports = errorHandler;
https://stackoverflow.com/questions/71205332
复制相似问题