Volley 网络请求数据 乱码

532次阅读  |  发布于4年以前

项目中的网络请求 使用的google的亲儿子Volley,一直很友好,然后乱码了。

对接口返回的数据进行了跟踪,数据格式是UTF-8,排除这个原因(见下图)

看了网上的帖子,Volley 默认 使用的"ISO-8859-1" 格式进行的解析,大多都是因为ISO-8859-1 编码格式导致的问题,去看看 。。。

parsed =newString(response.data,HttpHeaderParser.parseCharset(response.headers,"UTF-8")); 这里已 经使用UTF-8 解析了,也排除了这个原因,百思不得其姐。。。

好吧。。。再看下 接口返回的数据,看到了一丝蛛丝马迹

Content-Encoding是 gzip.........是gzip啊,原来我们的一台服务器开启了nginx的zip压缩,返回数据是一个压缩数据,怪不得 解析乱码了

解决办法,将gzip格式的数据,通过流读取出来,再进行解析。

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8