假设我有一个票证和评论资源。门票可以有很多评论。在您的更新端点中HTTP PUT /api/tickets/<ticket_id>/
,我是否需要客户端在更新票证时传递票证的所有字段及其所有注释?
我问了一些开发人员,其中一些人说,我应该通过将要修改的字段,因为它更轻,性能更快,更易于使用。有人说我应该传递票证的所有字段及其所有注释,因为PUT请求应该是幂等的。但是我担心的是,当评论过多时,有效负载将非常大。
是的,因为PUT请求应完全替换要更新的实体。如果要对实体进行部分更新,请使用PATCH请求。
另请参阅RFC以供参考
HTTP的PATCH方法
几个扩展超文本传输协议(HTTP)的应用程序需要一项功能来进行部分资源修改。
现有的HTTP PUT方法仅允许完全替换文档。该提议添加了新的HTTP方法PATCH,以修改现有的HTTP资源。
因此,在您的情况下,使用PATCH请求进行部分更新可能会更有效率。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句