我正在制作一个RESTful API,和大多数API一样,我有元素和集合。在这种特定情况下,我有以下端点:
/api/v1/Countries
GET
//检索国家/地区集合api/v1/Countries
POST
//在集合中添加新国家/地区api/v1/Countries/:id
GET
//获取具有给定ID 因此,我的API允许用户添加和检查国家/地区的信息。但是如果我想要更新呢?
要做到这一点,我知道我必须使用PUT
(我暂时不考虑PATCH
)。
我有两种方法可以做到这一点:
api/v1/Countries
PUT
//更新国家/地区列表api/v1/Countries/:id
PUT
//使用给定ID 在我的阅读中,这是我发现的:
提倡使用两者的人说它允许灵活性,因为在集合中使用PUT
将允许用户一次更新多个Country元素。
提倡反对使用两者的人说,这样你将有一个API,多个端点会做同样的事情(因为你现在可以通过集合更新国家或元素)并且这是API设计中的一个主要错误。
答案 0 :(得分:0)
api/v1/Countries/:id
中的PUT,因为我觉得让用户立刻将整个系列调到一边是危险的。按照你感觉更舒服的方式,这将是最好的。