Http请求的gzip压缩
HTTP 协议支持GZIP 压缩机制,也称协议压缩。
HTTP GZIP压缩是由WEB服务器和浏览器共同遵守的协议,目前主流的服务器和浏览器都支持GZIP压缩技术。
协议压缩就是依据HTTP协议进行压缩,不需要程序员进行压缩,解压编码,而是把压缩过程交给WEB服务器,将解压过程交给客户端。 如果客户端为支持GZIP压缩的浏览器,那么解压过程也不需要程序员参与,浏览器会按照一定的规则自动进行解压缩
客户端发送请求,服务端压缩响应数据返给客户端
1 客户端请求中增加Accept-Encoding: gzip,表示客户端要求服务端进行GZIP压缩;
2 服务端看响应内容的类型是否满足服务器配置的需要压缩的类型,如果符合,那么WEB服务器在传输响应内容之前,会对响应内容进行压缩,并在响应头中添加Content-Encoding gzip;如果不符合,那么将不压缩,直接返回。
服务端接收到请求后,将结果通过gzip压缩后返回给客户端并在响应头中增加Content-Encodin:gzip 表示响应数据已被压缩;
3 客户端接收到响应,如果响应头中包含Content-Encoding GZIP,那么浏览器会自动将响应内容进行GZIP解压缩,然后再呈现在页面上。如果不包含,那么将直接呈现在页面上;