我已经阅读了关于PUT的同一性能力的所有内容,而不是将其用于部分更新。我现在的问题是如何处理这种情况。
假设我的服务获得资源A的PUT请求.A有5个属性。如果请求中只包含其中的4个,我该怎么办?
在创建新资源时设置为null似乎没问题,但在更新时似乎可能存在问题或危险。
这种情况被认为是“最佳做法”?
答案 0 :(得分:1)
如果缺少的参数是强制参数,显然您应该返回HTTP 400
。如果参数不是必需参数,则可以使用传递的其他参数创建资源。
我认为这对更新案例也有效。如果缺少必需参数,则应返回HTTP 400
。否则,继续使用现有参数。
这就是我所做的,我认为这是一种合理的方法。
答案 1 :(得分:1)
根据实践中的书籍REST: