7

我试过搜索这个,但我还没有找到适合我需要的答案。

考虑到我目前有以下路线:

[GET] /items

可以使用查询参数进行过滤。现在我需要赋予它一次添加多个资源的能力。我考虑过执行以下请求:

[PATCH] /items

有这样的身体:

id[]=1&id[]=2&id[]=3&updateField=newValue

我认为这个电话有问题,但我无法弄清楚。

4

1 回答 1

18

在 RESTful API 中,URL 应该定义事务的对象,动词是动作。

所以GET /items应该返回所有项目。

GET /items/1应该返回 id 为 1 的项目。

因此,多个 id 应该是资源定义 (url) 的一部分。所以 GET /items/1,2,3应该返回 3 个适当的项目。

因此,要对许多 id 应用部分更新:

[PATCH] /items/1,2,3

然后在 PATCH 或 PUT 的正文中,您可以提供要更新的信息(假设您正在发送 JSON 正文)。

{"updateField": "newValue"}
于 2012-08-08T20:58:02.877 回答