此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。
226 IM Used
HTTP226 IM Used成功响应状态码表示服务器在响应GET 请求时返回了一个增量。该状态码用于HTTP 增量编码的上下文中。
IM 是instance manipulation(实例操作)的缩写,指的是生成差异(增量)算法。在增量编码中,客户端发送一个GET 请求,并携带了两个标头:A-IM: 表示偏好使用的差异算法,If-None-Match 指定了客户端已有的资源版本。服务器会返回相对于给定基础文档的增量,而不是完整的文档。此响应使用226 状态码,一个描述所用差异算法的IM: 标头,并可能包含一个Delta-Base: 标头,其中带有与增量关联的基础文档的ETag。
备注:对 HTTP 增量编码的支持较差,这意味着实现很少。相反,大多数系统只依靠压缩方法来减少带宽,不过也可以将压缩和增量编码结合起来。
即使客户端和服务器支持增量编码,代理或缓存可能不支持,且实现 HTTP 增量编码的复杂性可能超过其带来的收益。
In this article
状态
226 IM Used
示例
>接收使用了vcdiff 增量算法的208 响应
在以下GET 请求中,客户端请求一个资源并已缓存了 ETag 为abcd123 的版本。A-IM: 标头表明偏向使用vcdiff 和diffe 增量算法:
http
GET /resource.txt HTTP/1.1Host: example.comA-IM: vcdiff, diffeIf-None-Match: "abcd123"假设服务器支持增量编码,它将返回自 ETag 为abcd123 的版本以来的差异。IM 标头表示使用了vcdiff 算法,而Delta-Base: 标头表明该差异基于 ETag 为abcd123 的资源。
http
HTTP/1.1 226 IM UsedETag: "5678a23"IM: vcdiffContent-Type: text/plainContent-Length: 123Delta-Base: abcd123...规范
| Specification |
|---|
| Unknown specification> # section-10.4.1> |