假设我是一个服务器,响应批量创建某个实体的请求。假设我还决定这样做,以便如果由于服务器错误或用户错误而无法创建实体的一个实例,我仍然会创建其他实体实例。在这种情况下我应该返回什么? 201 因为我创建了请求中的大部分实体?或者 A 4xx/5xx 因为创建实体之一时出现错误?
最佳答案
如果返回 4xx 代码,则意味着整个请求失败,并且服务器状态未更改。
如果请求的目的是做“一件或多件事情,其中一些可能会失败”,那么部分申请仍然是成功的,因此处于 2XX 范围内。
206
不是一个好主意。这是专门针对使用 Range
的请求,但此处的情况并非如此。
207
。您可能想要定义自定义格式,而不是基于默认 XML 的格式。我的投票可能只是200
。
此外,考虑只执行许多请求。请求很便宜,为什么要把它们放在一起呢?现在每个请求都可以有自己漂亮、准确的状态代码。
关于rest - 当部分批量更新失败时,我应该返回什么状态代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30087835/