//1. 獲取響應返回的信息
//*貓的responseHeader的Content-Encoding=gzip,且Content-Type的charset=GBK
//*東的responseHeaders裏沒有Content-Encoding,且Content-Type的charset=UTF-8
GetMethod getMethod = new GetMethod(url);
...
InputStream in = getMethod.getResponseBodyAsStream();
BufferedReader reader = null;
Header header = getMethod.getResponseHeader("Content-Encoding");
if (header != null) {//天貓
if ("gzip".equals(header.getValue())) {
GZIPInputStream gis = new GZIPInputStream(in);//使用GZIP包裝一下
reader = new BufferedReader(new InputStreamReader(gis, "GBK"));
}
} else {//京東
reader = new BufferedReader(new InputStreamReader(in, "UTF-8"));
}
StringBuffer buffer = new StringBuffer();
String info = reader.readLine();
while (info != null) {
buffer.append(info);
buffer.append("\n");
info = reader.readLine();
}
responseStr = buffer.toString();