A. *_*ong 7 rest api-design http django-rest-framework
假设我有一个端点/api/todos并且我PATCH请求更改其中一个待办事项。我的PATCH请求在响应正文中包含所有待办事项的列表是否有意义?
有没有我可以阅读的规范?
我已经与一些开发人员交谈过,普遍的共识是该PATCH方法应该只返回更改后的条目。我同意这一点,但我正在寻找详细说明这一点的文档。
RFC 在这里。
但它并没有真正指定任何东西。这是一个例子:
Successful PATCH response to existing text file:
HTTP/1.1 204 No Content
Content-Location: /file.txt
ETag: "e0023aa4f"
The 204 response code is used because the response does not carry a
message body (which a response with the 200 code would have). Note
that other success codes could be used as well.
Run Code Online (Sandbox Code Playgroud)
所以你可以随心所欲地实现它。仅响应更改的条目将更符合其他方法(PUT、DELETE 等)通常的处理方式,所以我会这样做。
小智 5
因此,当您想要提供一个 RESTfull api/api/todos表示一个资源时,每个待办事项都有一个单独的 id。在这里,您可以将例如修补到“/api/todos/4”,以更新 ID 为 4 的待办事项。这里通常的行为是使用 204 状态代码或更新后的对象来响应,以保存另一个请求以获取更新去做。
如果您的待办事项不是带有 id 的单独对象,它们可能是一个项目列表,并且应该立即返回。
| 归档时间: |
|
| 查看次数: |
10860 次 |
| 最近记录: |