close

 

HttpClient client = new DefaultHttpClient();
HttpPost httppost = new HttpPost(url);

//送出請求時在header加上

httppost.addHeader("Accept-Encoding", "gzip");

 

HttpResponse response = client.execute(httppost);

int statusCode = response.getStatusLine().getStatusCode();

if (statusCode == 200) {

//檢查回應的header是否有用gzip處理

Header header = response.getFirstHeader("Content-Encoding");

   if (header != null && header.getValue().contains("gzip")) {
       StringBuffer sb = new StringBuffer();
       HttpEntity entity = response.getEntity();
       InputStream is = entity.getContent();
       GZIPInputStream gzin = new GZIPInputStream(is);
       BufferedReader br = new BufferedReader(new InputStreamReader(gzin, HTTP.UTF_8));
       String data = "";
       while ((data = br.readLine()) != null) {
              sb.append(data);
       }
       return sb.toString();
   } else {
       return EntityUtils.toString(response.getEntity(),HTTP.UTF_8);
   }

}else{

 return null;

}

arrow
arrow
    文章標籤
    android http header gzip
    全站熱搜

    Gino 發表在 痞客邦 留言(0) 人氣()