java web gzip_JAVA - 实现服务端gzip数据的解析

我原来写过一篇关于 gzip压缩与解析文章:Swift - 使用gzip压缩NSData数据(附:请求时将JSON数据进行压缩)。当时客户端是 iOS平台,而服务端使用的 PHP。样例中客户端先将 json数据通过 gzip压缩后发送给服务端。服务端收到数据后先解压缩,再解析数据。最后将解析的数据又返回给客户端。客户端把返回的数据打印出来(如下图)。数据等正确输出说明整个压缩解压的流程是没问题的。...
摘要由CSDN通过智能技术生成

我原来写过一篇关于 gzip压缩与解析文章:Swift - 使用gzip压缩NSData数据(附:请求时将JSON数据进行压缩)。当时客户端是 iOS平台,而服务端使用的 PHP。

样例中客户端先将 json数据通过 gzip压缩后发送给服务端。服务端收到数据后先解压缩,再解析数据。最后将解析的数据又返回给客户端。客户端把返回的数据打印出来(如下图)。数据等正确输出说明整个压缩解压的流程是没问题的。

f8a992dbec322a488895eb0258df1c23.png

有网友问了,如果我的服务端是用 JAVA写的,该怎么办。本文我就介绍下 JAVA如何解压 gzip数据。

一、创建处理gzip的过滤器

要实现 gzip解压,我们先要创建个过滤器(servlet Filter),用来对所有的 request请求进行处理。这样不管我们服务端使用哪种web框架都可以很好地适配。

1,GzipRequestWrapper.java

继承自 HttpServletRequestWrapper,其作用就是判断这个 request的内容是否使用 gzip压缩了。如果是压缩的,则对其进行解压。

package filter;

import java.io.IOException;

import java.util.zip.GZIPInputStream;

import javax.servlet.ServletInputStream;

import javax.servlet.http.HttpServletRequest;</

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值