1.对Java后端的请求HttpURLConnection对象中的消息头设置压缩

connection.setRequestProperty("Accept-Encoding", "gzip, deflate");

2.发送请求后获取response中的content-encoding

connection.getContentEncoding(); // 获取content-encoding

3.如果content-encoding == gzip,则将获取到的字节流转为字节数组(压缩),然后再将字节数组解压

public static byte[] uncompresss(byte[] bytes) throws Exception {

ByteArrayOutputStream out = new ByteArrayOutputStream();

ByteArrayInputStream in = new ByteArrayInputStream(bytes);

GZIPInputStream gzip = new GZIPInputStream(in);

byte[] buffer = new byte[1024];

int n;

while((n = gzip.read(buffer)) >= 0) {

out.write(buffer, 0, n);

}

return out.toByteArray();

}

gzip压缩字符串为字节数组

/**

* 将字符串进行gzip压缩,输出压缩后的字节数组

*/

public static byte[] compress(String str, String encoding) throws Exception {

if (str == null || str.length() == 0) {

return null;

}

ByteArrayOutputStream out = new ByteArrayOutputStream();

GZIPOutputStream gzip;

gzip = new GZIPOutputStream(out);

gzip.write(str.getBytes(encoding));

gzip.close();

return out.toByteArray();

}

java http 压缩_解压HTTP API的GZIP压缩数据相关推荐

  1. Linux(入门基础):04---文件的压缩、解压、打包(gzip、bzip2、xz、tar)

    .tar 解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是压缩!) --------------- .gz 解压 ...

  2. Python 技术篇-用zipfile库进行zip文件的压缩与解压实例演示,python压缩本地文件夹为zip文件并保留目录结构

    首先给大家演示下 zip 文件的解压方法. import zipfiledef zip_extract_to(path_zip, path_aim):'''作用:解压压缩包参数一:压缩包位置参数二:解 ...

  3. mac java打包文件_解压MAC压缩的zip文件

    import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import ...

  4. 算法 - 赫夫曼编码(对字符串进行压缩 与 解压(解码)) - (对文件进行压缩解压)

    1.压缩:使用赫夫曼编码进行压缩 题目 构建赫夫曼树 package tree.huffmantree;import java.util.*;public class HuffmanCode {pub ...

  5. 模块讲解----shutil模块(copy、压缩、解压)

    作用与功能 主要用于文件的copy,压缩,解压 导入shuitl模块: import shutil copy方法 1 1.shutil.copyfileobj() 打开file1,并copy写入fil ...

  6. Linux 中的文件压缩与解压

    .tar tar xvf FileName.tar # 解压 tar cvf FileName.tar DirName # 压缩 .gz gunzip FileName.gz # 解压 gzip -d ...

  7. Linux 文件目录压缩与解压命令

    Linux 文件目录压缩与解压命令,融合多部Linux经典著作,去除多余部分,保留实用部分. compress压缩: compress是个历史悠久的压缩程序,文件经它压缩后,其名称后面会多出 &quo ...

  8. Oka解压专家 Pro for Mac(压缩解压软件)

    Oka解压专家 Pro Mac版可以压缩或解压许多不同类型的压缩文件,使用非常简单,只需将要压缩的文件拖放到Dock或主窗口中的FileZip图标即可. Oka解压专家 Pro for Mac安装文件

  9. 解压专家Oka for Mac(压缩解压软件)中文版

    解压专家Oka Mac中文版是一款小巧易用的压缩解压软件,可以压缩或解压许多不同类型的压缩文件.解压专家Oka可以提取大量压缩文件,从ZIP到7Z档案,甚至是分开的档案.只需将文件拖放到图标或主窗口中 ...

最新文章

  1. vivoNEX3s版本服务器无响应,vivo NEX 3S为什么突然无人问津,这几点原因道出真相...
  2. 终极解决方式——找到占用U盘的程序
  3. .NET Core 3.0之深入源码理解Startup的注册及运行
  4. vue 指令 v-on 事件修饰符-自定义键盘事件
  5. 罗列几个Android插件化开发框架
  6. 24矩阵——条件数与方程组的性态、“病态”矩阵与方程、系数矩阵与右端微小扰动情况、条件数的几何意义
  7. Nginx源码安装(CentOS7)
  8. 可能是比原版Firefox更好用的个人定制版Firefox
  9. 联想开机启动项按哪个_联想台式电脑设置第一启动的快捷键是什么
  10. 点亮LED-STM32电控学习笔记03
  11. Qt开源作品33-图片开关控件
  12. 2022年上海市安全员C证最新解析及上海市安全员C证考试技巧
  13. FPGA学习——数字密码锁(下)
  14. 中兴新支点安装broadcom博通wifi无线网卡驱动
  15. 如何通过自学成为一名 Android 应用开发工程师?
  16. Linux 根目录爆满 解决
  17. Office各个windows版本支持哪些系统呢
  18. 轻松通关以太坊--初识以太坊
  19. 自学网络安全?一般人我还是劝你算了吧
  20. java怎么做沙子合并,那些java沙子游戏如何跟踪这么多粒子?

热门文章

  1. 注意力机制 神经网络_图注意力网络(GAT)
  2. Pytorch MNIST直接离线加载二进制文件到pytorch
  3. linux进程间的通信(C): 共享内存
  4. 使用VS2012内建的C++测试架构进行单元测试
  5. mysql 左连接 重复_mysql左连接重复行
  6. 怎么把python解释器配置在pycharm中_在PyCharm中配置项目(三):配置Python解释器...
  7. pythonsqlite3模糊_Python编写通讯录通过数据库存储实现模糊查询功能
  8. string类有可以调换方向的函数吗_深度剖析C++中的inline函数
  9. 子集和问题 算法_子集问题 主要是去重算法
  10. python数据分析神器_太香了!墙裂推荐6个Python数据分析神器!!