当使用“If-Match”标头执行 PUT 或 DELETE 时,如果客户端发送的 ETag 指示过时,而不是仅返回 412,我想返回整个最新实体(包括其HTTP 标头中的新 ETag),因此客户端不必执行另一个 GET 往返,否则他们肯定会这样做 - 在我的用例中,至少在 100% 的情况下他们会这样做。
我在 412 的文档中没有看到任何支持或反对的内容:http: //www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.13
比如说,状态码 409,一般来说,对 4xx 错误的响应主体做任何喜欢的事情似乎都不是问题:http: //www.w3.org/Protocols/rfc2616/rfc2616 -sec10.html#sec10.4.10
那么,有什么东西(尤其是在 HTTP 规范中)反对返回完整的最新实体及其 ETag?