【发布时间】:2020-05-15 21:19:30
【问题描述】:
当我的一项服务失败时,我想向客户端返回正确的 HTTP 状态代码。
假设我们有一个简单的快速应用程序,其中服务getUserById(userId) {...} 从控制器调用。该服务可能由于多种原因而失败,例如无效的用户 ID、代码中的一些错误或仅仅是因为不存在具有给定 ID 的用户。
要返回正确的 HTTP 状态代码(分别为 400、500 和 404),当我从我的服务中抛出它时,我需要以某种方式将它附加到错误中。我该怎么做?是否有任何最佳做法?还是我完全误解了什么?
到目前为止,我只是这样做了:
throw { message: 'No user with this ID exists', status: 404 }
但是考虑到should only throw standard errors,我确实觉得这不是很容易维护。
【问题讨论】:
标签: javascript rest express error-handling http-status-codes