zoukankan      html  css  js  c++  java
  • 【第七篇】Volley之处理Gzip数据

     一般对于API请求需带上GZip压缩,因为API返回数据大都是Json串之类字符串,GZip压缩后内容大小大幅降低.

    public class GZipRequest extends StringRequest {
        public GZipRequest(int paramInt, String paramString,
                Response.Listener<String> paramListener,
                Response.ErrorListener paramErrorListener) {
            super(paramInt, paramString, paramListener, paramErrorListener);
        }
    
        public GZipRequest(String paramString,
                Response.Listener<String> paramListener,
                Response.ErrorListener paramErrorListener) {
            super(paramString, paramListener, paramErrorListener);
        }
    
        protected Response<String> parseNetworkResponse(
                NetworkResponse paramNetworkResponse) {
            String str1 = "";
    
            try {
                GZIPInputStream gzipInputStream = new GZIPInputStream(
                        new ByteArrayInputStream(paramNetworkResponse.data));
                InputStreamReader inputStreamReader = new InputStreamReader(
                        gzipInputStream);
                BufferedReader bufferedReader = new BufferedReader(
                        inputStreamReader);
                while (true) {
                    String str2 = bufferedReader.readLine();
                    if (str2 == null)
                        break;
                    str1 = str1 + str2;
                }
                inputStreamReader.close();
                bufferedReader.close();
                gzipInputStream.close();
                return Response.success(str1,
                        HttpHeaderParser.parseCacheHeaders(paramNetworkResponse),
                        false);
            } catch (IOException e) {
                return Response.error(new ParseError(e));
            }
        }
    }
  • 相关阅读:
    进程、线程
    timer控件、三级联动
    用户控件、动态创建添加
    打印控件
    窗体移动和阴影,对话框控件
    winform listview控件
    winform打开唯一窗体、构造函数传值
    菜单和工具栏
    winform公共控件
    hibernate中各种包的添加
  • 原文地址:https://www.cnblogs.com/androidsuperman/p/4815037.html
Copyright © 2011-2022 走看看