PUT请求主体是否必须包含整个实体?

时间:2011-04-08 00:37:24

标签: rest put

在资源上定义PUT方法时,是否需要/标准/惯用来包含资源的整个定义(即创建它所需的一切),或者只发送更新的字段也可以接受?

例如,如果我有一个包含10个属性的资源,包括一个名为quantity的资源,我想将数量更新为指定值。 PUT只能接受数量吗?

其他9个属性呢?假设每个属性都可以单独更新,那么定义请求主体只是为了让所有10个属性都是可选的是一个好习惯吗?

1 个答案:

答案 0 :(得分:5)

当RESTfully使用时,PUT旨在替换整个资源,因此您需要包含完整的属性集。

也就是说,无论如何,REST在大多数情况下使用得相当不合适,只要您的API记录良好,您就可以做任何您认为最适合您情况的事情。