Vit*_*tos 4 api rest http-status-codes
我和我的团队正在编写REST API,但仍然没有完全理解一些概念.
在给定资源中:objective/{id}/goal
目标是收集
如果消费者试图达到不存在的目标,API将返回状态代码404
,非常简单.
例如:objective/999
退货404
出于某种原因,消费者试图从这个不存在的资源中获取目标:
例如:objective/999/goal
退货?
哪个是最合适的返回代码?我觉得这也应该是一个404
.有些人正在考虑另一个错误代码,因为API应该以某种方式告知父资源首先不存在.
使用404.请记住,404响应可能包含响应正文.所以你可以用以下内容回复:
Request
GET /objective/7/goal
Response
404 Not Found
{
"type": "ParentNotFound",
"description": "The parent resource was not found.",
"parent_uri": "/objective/7"
}
Run Code Online (Sandbox Code Playgroud)
通常,为错误状态代码包含某种响应主体是个好主意.即使以标准方式使用错误状态代码,作为API客户端仍然可以看到关于我看到错误的原因的人类消息.当错误状态代码以几乎标准但略微偏离的方式使用时,其好处甚至更大.
归档时间: |
|
查看次数: |
621 次 |
最近记录: |