REST API:错误的架构与错误的数据

时间:2014-03-05 16:09:28

标签: rest http-status-codes

假设我们有一个REST API,它接受以下正文以获取创建用户请求:

{
  "username": "joe",
  "email" : "joe@domain.com"
  ...
}

现在我有点困惑,不知道何时使用HTTP状态400以及何时使用HTTP状态422.

如果架构错误(例如usernamexx而不是username),返回400是否正确?

当架构正确但数据不正确时(例如@dummy之类的无效电子邮件格式)返回422是否正确?

1 个答案:

答案 0 :(得分:1)

我无法对此帖发表评论,所以我正在写一篇简短的回复。

  

当架构错误时(例如usernamexx而不是username),返回400是否正确?

在这种情况下, 422 响应是正确的,因为语法不正确。这在post进一步描述。

  

当架构正确但数据不正确时(例如@dummy之类的无效电子邮件格式)返回422是否正确?

如果格式错误/不正确的实体,则应返回 400 。这在上面提到的帖子中进一步描述。您可以通过包含一个主体来进一步解释错误来进一步改进响应消息。