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的几点区别
查看全文
相关阅读:
axios 配置
vue 配置App.js
vue 挂载方式
常用的js
vuex
vue搭建环境
JS中 toString() & valueOf()
html-webpack-plugin 中使用 title选项设置模版中的值无效
webpack为什么加载不了css?
visual studio for mac 安装文件
原文地址:https://www.cnblogs.com/androidsj/p/5474584.html
最新文章
有关html5的history api
Javascript(es2016) import和require用法和区别
关于json.stringify的注意事项
几个命令行命令的总结(node, babel-cli, babel-node)
关于node升级到7.0,无法gulp alljs的问题
es6学习笔记
Vue知识点——vue数据深拷贝方法
git工具——TortoiseGit指定某个分支clone
Hibernate错误——No row with the given identifier exists
git操作——git pull 撤销误操作,恢复本地代码
热门文章
Oracle错误——引发ORA-01843:无效的月份。
Vue学习——使用vue-cli搭建一个简单的本地vue项目
Vue学习——学习vue必须了解的几个知识点
Oracle错误——ORA-39000:转储文件说明错误、ORA-39001:参数值无效、ORA-39088:文件名不能包含路径说明
Oracle错误——ORA-39002:操作无效、ORA-39070:无法打开日志文件、ORA-06512:在“SYS.UTL_FILE”,line
Oracle错误——tablespace 'XXXX' does not exist
Html和CSS布局技巧-多列布局(二)
Html和CSS布局技巧-单列布局(一)
chrome 小技巧 ,保持元素的hover状态
当页面滚动到一定位置之后,让元素固定在顶部,小于位置后恢复原来的位置 jquery
Copyright © 2011-2022 走看看