假设我的驱动程序资源有休息端点。 我有像这样的PUT方法
myapi/drivers/{id}
{body of put method}
我需要添加允许“启用”和“禁用”驱动程序
的功能为此创建新端点是个好主意吗?
PUT myapi/drivers/{id}/enable/false
或者最好使用现有端点?使用现有端点的一个问题是驱动程序有很多字段(差不多30个),而发送所有这些字段只是为了更新'启用'或'禁用'驱动程序有点过分。
您怎么看?
答案 0 :(得分:10)
这正是HTTP方法PATCH
的用途。它用于资源包含许多字段但您只想更新一些字段的情况。
与PUT
一样,您向myapi/drivers/{id}
发送请求。但是,与PUT
不同,您只需在请求正文中发送要更改的字段。
创建像myapi/drivers/{id}/enable
这样的端点并不是非常RESTful,因为“enable”本身并不能真正称为资源。
有关Spring PATCH
端点的示例实现,请参阅此link。
答案 1 :(得分:1)
使用PATCH Http metod更新一个字段
PATCH myapi/drivers/{id}/enable