zoukankan
html css js c++ java
HTTP gzip和deflate的几点区别
gzip是一种数据格式,默认且目前仅使用deflate算法压缩data部分;
deflate是一种压缩算法,是huffman编码的一种加强。
deflate与gzip解压的代码几乎相同,可以合成一块代码。
区别仅有:
deflate使用inflateInit(),而gzip使用inflateInit2()进行初始化,比 inflateInit()多一个参数: -MAX_WBITS,表示处理raw deflate数据。因为gzip数据中的zlib压缩数据块没有zlib header的两个字节。使用inflateInit2时要求zlib库忽略zlib header。在zlib手册中要求windowBits为8..15,但是实际上其它范围的数据有特殊作用,见zlib.h中的注释,如负数表示raw deflate。
Apache的deflate变种可能也没有zlib header,需要添加假头后处理。即MS的错误deflate (raw deflate).zlib头第1字节一般是0x78, 第2字节与第一字节合起来的双字节应能被31整除,详见rfc1950。例如Firefox的zlib假头为0x7801,python zlib.compress()结果头部为0x789c。
deflate 是最基础的算法,gzip 在 deflate 的 raw data 前增加了 10 个字节的 gzheader,尾部添加了 8 个字节的校验字节(可选 crc32 和 adler32) 和长度标识字节。
gzip和deflate的几点区别
查看全文
相关阅读:
java后台生成图片二维码
layui框架下的摸索与学习
eclipse/myeclipse中js/java的自动提示只有4个字符怎么解决
Git日常操作指令
node指南开发练习笔记(1)-- express
echart全国主要城市某数据的显示
微信公众号开发获取当前位置
显示上传图片
移动端Safari onclick事件兼容
Plupload上传插件自定义图片的修改
原文地址:https://www.cnblogs.com/androidsj/p/5474584.html
最新文章
python网络编程干货
使用递归与栈实现三级菜单
使用random模块中的sample模拟发红包
使用hashlib判断两个大文件的一致性
浏览器下载java项目中的文件
记录一次操作千万级数据的时间
fastjson解析多层json
js 写ajax
table th表头固定属性设定
Excel导入文件到数据库
热门文章
浏览器文件下载读取本地文件
fastDfs 下载和上传
idea远程连接服务器tomcat
解析简单Jason串
Springboot+swagger2的接口文档开发
Springboot错误问题总结
Json相关内容
linux下安装jdk跟tomcat
小程序相关视频
小程序图片电脑开发显示,手机上不显示的问题
Copyright © 2011-2022 走看看