Gzip uncompress错误代码Z_BUF_ERROR

  • 现在大多数网站都采用gzip解压缩技术来提升web应用的性能(百度、新浪等等等)。
  • 某日gzip uncompress阶段,出现崩溃错误。err代码数字-5,查看对应的头文件zlib.h,确定错误原因为Z_BUF_ERROR
#define Z_OK            0
#define Z_STREAM_END    1
#define Z_NEED_DICT     2
#define Z_ERRNO        (-1)
#define Z_STREAM_ERROR (-2)
#define Z_DATA_ERROR   (-3)
#define Z_MEM_ERROR    (-4)
#define Z_BUF_ERROR    (-5)   // 这里
#define Z_VERSION_ERROR (-6)
  • google了一段时间,并在程序中加log。终于找到了问题,source缓冲区(即待解压的资源)的长度为0。
  • 总结一下导致Z_BUF_ERROR的原因:
  1. source缓冲区长度为0(没有要解压的资源,却调用解压过程)。
  2. dest缓冲区(解压后的资源)长度不够用来解压。

Gzip uncompress错误代码Z_BUF_ERROR相关推荐

  1. Java使用GZIP进行压缩和解压缩(GZIPOutputStream,GZIPInputStream)

    使用GZIPOutputStream进行GZIP压缩: public static byte[] compress(String str, String encoding) {if (str == n ...

  2. Sprintboot redis 采用gzip和Snappy compress压缩数据

    1 前言 怎么使用和结合Sprintboot + redis ,可以参照我前面的文章:https://blog.csdn.net/zzhongcy/article/details/102584028 ...

  3. c语言解压http中的gzip文件

    这是一篇流水账,记录前两天在解决http中解压gzip数据流程.(写完这篇就可以做其他工作了~~) 目的:c语言解压http的中gzip文件 一. tcpdump抓包,这条数据包是我试用某app时收到 ...

  4. 基于Node.js实现压缩和解压缩的方法

    本篇文章主要介绍了基于Node.js实现压缩和解压缩的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 压缩格式 zip 和 gzip 是两种我们最常见到的压缩格式,当 ...

  5. 构建最小根文件系统lfs

    构建最小根文件系统linuxfromscratch 一.Archival Utilities 8.8. Xz-5.2.5 Contents of Xz Installed programs: lzca ...

  6. 设计模式中的行为类模式

    设计模式中的行为类模式 行为类模式包括责任链模式.命令模式.解释器模式.迭代器模式.中介者模式.备忘录模式.观察者模式.状态模式.策略模式.模板方法模式.访问者模式. 责任链模式:方向是单一的.(上访 ...

  7. 163音乐点歌乱码分析以及解决办法

    习惯抓包然后把所有请求头弄上去,结果电脑上正常,手机模拟访问竟然是乱码的,我就郁闷了,竟然是http的常识坑死了我,还以为是163有什么高级手段呢. 解决方法是删除Accept-Encoding的模拟 ...

  8. Node.js 实现 zip压缩和解压

    Node.js 实现 zip压缩和解压 安装 compressing npm install compressing --save compressing.zip.compressDir('nodej ...

  9. JAVA抖音 WSS弹幕

    更新websocket读取数据. 数据格式变化不大,没有太复杂的加密. 外层多包了一层proto协议,数据增加了gzip压缩. 废话不多说,下面详细介绍. 一.浏览器包依旧采用微软playwright ...

最新文章

  1. 【Scratch】青少年蓝桥杯_每日一题_2.23_小猫来回走
  2. 基于nanopi的即时通讯系统
  3. windows 7(32/64位)GHO安装指南(序篇)~
  4. 洛谷——P1547 Out of Hay
  5. python内点法_Python_Day_02 str内部方法总结
  6. 使用 typescript ,提升 vue 项目的开发体验(1)
  7. html手机显示评论列表页面,请问如何完美显示评论列表头像
  8. Cannot find or open the PDB file
  9. Windows10+Ubuntu 18.04.2+ROS 安装笔记(SSD单硬盘)上
  10. cobbler get-loaders 错误解决方法
  11. jquery mobile pc上可以滚动 手机上不能上下滚动_胶天下 | 胶粘剂在手机镜片粘接中的应用...
  12. 没想到,区块链竟然是这样的!
  13. Ubunt_配置_tftp(文件传输)
  14. php zend studio 下载地址,Zend Studio
  15. 《ARM64体系结构编程与实践》开始预订了
  16. c语言实验编码sdut,C语言实验一(1)
  17. 怎样把excel中的图表插入PPT并且可以在PPT中编辑图表
  18. 用Python完成毫秒级抢单,助你秒杀淘宝大单
  19. CTU Open Contest 2019 G. Beer Mugs 异或维护奇偶性
  20. 嵌入式行业技术思维导图

热门文章

  1. bzoj3007: 拯救小云公主(二分+并查集)
  2. java 使用POI导出复杂excel表格,通过浏览器下载
  3. 欧蓝德V1.3.0V2.1.0车机升级
  4. IDataParameter[]使用
  5. Python 课程设计 ---- 高校教务系统(数据库、wxPython界面)
  6. 链路追踪——【Brave】第一遍小结
  7. 网络作者的心声-8、起点分成挺厚道
  8. RM云台黑箱系统辨识及建模
  9. Python暴力破解WIFI,妈妈再也不用愁WIFI不够用了!
  10. C语言自学完备手册(01)——开篇和入门