现在的位置: 首页 > web前端 > 正文

accept encoding常见类型

2020年07月20日 web前端 ⁄ 共 1003字 ⁄ 字号 评论关闭

  Accept-Encoding,HTTPHeader中Accept-Encoding是浏览器发给服务器,声明浏览器支持的编码类型。


  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值的定义,或者你认为另外一种类型是更有意义的)


  Accept-Encoding注意什么


  如果服务器不支持identity并且浏览器没有发送Accept-Encoding,那么服务器应该倾向于使用HTTP1.0中的"gzip"and"compress",服务器可能按照客户端类型发送更适合的encoding类型大部分HTTP1.0的客户端无法处理q值


  总之,Accept-Encoding给大家简单的介绍了一些,希望大家多看看。

抱歉!评论已关闭.