226 IM Used

HTTP 的 226 IM Used 成功響應 狀態程式碼表示伺服器正在返回對 GET 請求的 增量。它用於HTTP 增量編碼的上下文中。

IM 代表例項操作,指的是生成增量的演算法。在增量編碼中,客戶端傳送帶有兩個頭的 GET 請求:A-IM:,它指示對差異演算法的偏好,以及 If-None-Match,它指定它擁有的資源的版本。伺服器會響應相對於給定基本文件的增量,而不是完整文件。此響應使用 226 狀態程式碼,一個描述所用差異演算法的 IM: 頭,並且可能包括一個帶有與增量相關的基本文件匹配的 ETagDelta-Base: 頭。

警告:HTTP 增量編碼的支援不佳,這意味著只有少數實現。相反,大多數系統僅依賴 壓縮方法 來減少頻寬,儘管可以結合壓縮和增量編碼。

即使客戶端和伺服器支援增量編碼,代理或快取可能不支援,並且將 HTTP 增量編碼新增到系統中的複雜性可能大於其優勢。

狀態

226 IM Used

示例

接收帶有 vcdiff 增量演算法的 208

在以下 GET 請求中,客戶端請求一個資源,並有一個帶有 ETag abcd123 的快取版本。A-IM: 頭表示對 vcdiffdiffe 增量演算法的偏好

http
GET /resource.txt HTTP/1.1
Host: example.com
A-IM: vcdiff, diffe
If-None-Match: "abcd123"

假設伺服器支援增量編碼,它將響應自帶有 ETag abcd123 的版本以來的差異。IM 頭表明使用的是 vcdiff 演算法,Delta-Base: 頭表明該差異基於帶有 ETag abcd123 的資源。

http
HTTP/1.1 226 IM Used
ETag: "5678a23"
IM: vcdiff
Content-Type: text/plain
Content-Length: 123
Delta-Base: abcd123

...

規範

規範
未知規範
# section-10.4.1

另請參見