我已阅读有关 PUT 的同上效力的所有内容,并且不将其用于部分更新。我现在的问题是如何处理这种情况。
假设我的服务收到资源 A 的 PUT 请求。A 有 5 个属性。如果请求只包含其中 4 个,我该怎么办?
- 将缺失的属性设置为 null
- 抛出错误,400 错误请求
- 其他?
在创建新资源时设置为 null 似乎没问题,但在更新时似乎可能有问题或危险。
对于这种情况,哪一个被认为是“最佳实践”?
最佳答案
根据《REST in Practice》一书:
- PUT 需要完整的资源表示
- 建议在通常涉及大量资源的情况下使用 PATCH 仅提供更改的表示
关于REST:PUT 以及如何处理部分实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13861062/