假设我们有两个对象。post和comment。post有 n- comments。
如果我想获取(或更改) acomment的 apost那么我也可以做 an
[DELETE, GET, PATCH] posts/{postId}/comments/{commentId}
而不是
[DELETE, GET, PATCH] GET comments/{commentId}
但是......当服务器注意到给定的存在commentId但有另一个postId如客户端请求所说的时,会发生什么?那是不是一个...
这肯定是客户端错误,因此正确的状态代码应该在4xx范围内。
当无法找到给定 URI 的资源表示时,服务器应返回带有404状态代码的响应:
(未找到)状态代码
404表示源服务器未找到目标资源的当前表示或不愿意透露该表示的存在。[...]
状态代码422旨在指示语法上有效但语义上无效的有效负载。
例如,假设您有一个端点来创建评论,并且有效负载应包含该评论所属帖子的标识符:
POST /comments HTTP/1.1
Host: example.org
Content-Type: application/json
{
"content": "Awesome post!",
"postId": 1
}
Run Code Online (Sandbox Code Playgroud)
在这种情况下,如果postId引用了不存在的帖子,服务器应该返回422。
| 归档时间: |
|
| 查看次数: |
3028 次 |
| 最近记录: |