0
我想在Android應用程序中閱讀網站的內容(http://www.google.com)。使用過時的DefaultHttpClient仍然正常工作,我總是得到約15.000個字符的內容長度:與Apache的DefaultHttpClient和HttpURLConnection不同的內容
DefaultHttpClient client = new DefaultHttpClient();
HttpGet g = new HttpGet(target);
HttpResponse res = client.execute(g);
InputStream is = res.getEntity().getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(is, "UTF-8"));
StringBuilder builder = new StringBuilder();
String line;
while ((line = reader.readLine()) != null) {
builder.append(line);
}
return Base64.encodeToString(builder.toString().getBytes(), Base64.NO_WRAP);
然而,當我使用HttpURLConnection類來達到同樣的,我得到一個不同的內容約100.000個字符的長度。
HttpURLConnection connection = (HttpURLConnection) new URL(target).openConnection();
InputStream is = connection.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(is, "UTF-8"));
StringBuilder builder = new StringBuilder();
String line;
while ((line = reader.readLine()) != null) {
builder.append(line);
}
return Base64.encodeToString(builder.toString().getBytes(), Base64.NO_WRAP);
有誰知道,爲什麼會有這麼大的差別。謝謝!
你用'HttpURLConnection'獲得了什麼問題? –
您是否檢查請求是否包含相同的用戶代理? –
當我使用HttpURLConnection加載了很多JavaScript事件時,DefaultHttpClient(100.000字符而不是15.000) – user7346048