我正在开发一个API,我始终尝试为每个情况使用最正确的http状态码。
其中一个情况是针对POST请求的响应。例如,/orders/
端点的POST方法将接收一些信息,如customer
:
{
customerDocument: {number: "123.456.789"},
// other informations for create a order
}
所以,我的问题是:如果客户文档中的这个数字不存在,返回一个带有友好消息的404状态码错误是否可以?告诉用户未找到该客户。
通常我只在特定资源的GET请求中使用404(最显然的用法),例如:
/customers/{number}/
在业务验证中,例如“客户未激活”,我通常使用HTTP状态码422,适用于任何HTTP方法(POST、PUT、GET等)。但是我对于我的POST示例是否可以使用404或422有疑问。