我试过这个,但我没有找到符合我需要的答案。
考虑到我目前有以下路线:
[GET] /items
可以使用查询参数进行过滤。现在我需要让它能够一次添加多个资源。我考虑过做以下请求:
[PATCH] /items
这样的身体:
id[]=1&id[]=2&id[]=3&updateField=newValue
我认为这次电话有问题,但我无法弄明白。
答案 0 :(得分:17)
在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"}