Accept-Encoding
计算机术语
Accept-Encoding,HTTP Header中Accept-Encoding 是浏览器发给服务器,声明浏览器支持的编码类型
概念
HTTP Header 中 Accept-Encoding 是浏览器发给服务器,声明浏览器支持的编码类型
常见的有
Accept-Encoding: compress, gzip //支持compress 和gzip类型
Accept-Encoding:  //默认是identity
Accept-Encoding: *  //支持所有类型
Accept-Encoding: compress;q=0.5, gzip;q=1.0 //按顺序支持 gzip , compress
Accept-Encoding: gzip;q=1.0, identity; q=0.5, *;q=0 // 按顺序支持 gzip , identity
服务器返回的对应的类型编码 Header 是 Content-Encoding。
服务器处理 Accept-Encoding 的规则如下:
1. 如果服务器可以返回定义在 Accept-Encoding 中的任何一种 Encoding 类型,那么处理成功(除非 q 的值等于0, 等于0代表不可接受)
2. * 代表任意一种Encoding类型 (除了在 Accept-Encoding 中显示定义的类型)
3.如果有多个 Encoding 同时匹配,按照 q 值顺序排列
4. identity 总是可被接受的 Encoding 类型(除非显示的标记这个类型q=0)
如果 Accept-Encoding 的值是空, 那么只有identity是会被接受的类型
如果 Accept-Encoding 中的所有类型服务器都没发返回, 那么应该返回 406 错误状态码给客户端
如果 Request中 没有 Accept-Encoding 那么服务器会假设所有的 Encoding 都是可以被接受的。
如果 Accept-Encoding 中有 identity 那么应该优先返回 identity (除非有 q 值的定义,或者你认为另外一种类型是更有意义的)
注意:
编码类型
GZIP:
GZIP最早由Jean-loup Gailly和Mark Adler创建,用于UNIX系统的文件压缩。我们在Linux中经常会用到后缀为.gz的文件,它们就是GZIP格式的。现今已经成为Internet 上使用非常普遍的一种数据压缩格式,或者说一种文件格式。 HTTP协议上的GZIP编码是一种用来改进WEB应用程序性能的技术。大流量的WEB站点常常使用GZIP压缩技术来让用户感受更快的速度。这一般是指WWW服务器中安装的一个功能,当有人来访问这个服务器中的网站时,服务器中的这个功能就将网页内容压缩后传输到来访的电脑浏览器中显示出来.一般对纯文本内容可压缩到原大小的40%.这样传输就快了,效果就是你点击网址后会很快的显示出来.当然这也会增加服务器的负载. 一般服务器中都安装有这个功能模块的.
COMPRESS
compress是一个相当古老的 unix 档案压缩指令,压缩后的档案会加上一个 .Z 延伸档名以区别未压缩的档案,压缩后的档案可以以 uncompress 解压。若要将数个档案压成一个压缩档,必须先将档案 tar 起来再压缩。由于 gzip 可以产生更理想的压缩比例,一般人多已改用 gzip 为档案压缩工具。
参考资料
Accept-Encoding.博客园.
最新修订时间:2023-05-20 12:06
目录
概述
概念
参考资料