--- title: Content-Encoding slug: Web/HTTP/Headers/Content-Encoding tags: - 超文本传输协议 - 首部 translation_of: Web/HTTP/Headers/Content-Encoding ---
Content-Encoding
是一个实体消息首部,用于对特定媒体类型的数据进行压缩。当这个首部出现的时候,它的值表示消息主体进行了何种方式的内容编码转换。这个消息首部用来告知客户端应该怎样解码才能获取在 Content-Type
中标示的媒体类型内容。
一般建议对数据尽可能地进行压缩,因此才有了这个消息首部的出现。不过对于特定类型的文件来说,比如jpeg图片文件,已经是进行过压缩的了。有时候再次进行额外的压缩无助于负载体积的减小,反而有可能会使其增大。
Header type | {{Glossary("Entity header")}} |
---|---|
{{Glossary("Forbidden header name")}} | no |
Content-Encoding: gzip Content-Encoding: compress Content-Encoding: deflate Content-Encoding: identity Content-Encoding: br
gzip
x-gzip
指令。compress
deflate
identity
br
客户端可以事先声明一系列的可以支持压缩模式,与请求一齐发送。 {{HTTPHeader("Accept-Encoding")}} 这个首部就是用来进行这种内容编码形式协商的:
Accept-Encoding: gzip, deflate
服务器在 Content-Encoding
响应首部提供了实际采用的压缩模式:
Content-Encoding: gzip
需要注意的是,服务器端并不强制要求一定使用何种压缩模式。采用哪种压缩方式高度依赖于服务器端的设置,及其所采用的模块。
Specification | Title |
---|---|
{{RFC("7231", "Content-Encoding", "3.1.2.2")}} | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |
http://www.ietf.org/id/draft-alakuijala-brotli | Brotli Compressed Data Format |
{{Compat("http.headers.Content-Encoding")}}