REST HTTP状态代码验证API的最佳实践

时间:2017-01-18 11:46:12

标签: spring rest http-status-codes http-status

我正在创建一个简单的API来验证成员资格。客户端必须输入一个字符串ID,服务器将检查该ID是否是我们的社区有效成员。 ID必须仅为数字,长度为10。

非常简单吧?

如果ID有效,我们当然会返回HTTP状态代码OK。 如果ID包含alfabet,或者少于/大于10,那么我们将返回HTTP状态代码BAD REQUEST。

问题是,当ID是数字且长度= 10但是不是我们社区的成员时,返回的最佳实用HTTP状态代码是什么?为什么会这样。

1 个答案:

答案 0 :(得分:0)

REST API的端点通常是使用GET,PUT,POST,DELTE等HTTP方法进行操作的资源。当你这样做时,更容易决定返回哪个HTTP状态。

也许你可以建立一个终点

/member/{id}
  • 如果存在具有此ID的成员,则返回HTTP 200,如果您想要一些具有基本成员信息的JSON
  • 如果id有效,但没有成员存在,则返回HTTP 404 - NOT FOUND
  • 如果id无效,长度!= 10或包含无效字符,则返回HTTP 400 BAD REQUEST

您可以在此处找到有关REST API design

的更多信息