正如標題所述,我在android中使用httpget,並且它的工作。但是,它返回的數據不完整。該調用返回大約99kb的json數據。但是,我的功能只產生38kb,json字符串不完整。Android獲取請求返回不完整的數據
我沒有得到任何錯誤,所以很難看到它發生的原因。
尺寸測量只是我在瀏覽器中調用並將輸出保存到一個文件中,並對函數的輸出進行相同操作。
下面是獲取URL代碼:
public String getpage2(){
HttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet(this.request);
HttpResponse response = null;
try {
response = client.execute(request);
} catch (ClientProtocolException e2) {
// TODO Auto-generated catch block
Log.e("getpage",e2.toString());
e2.printStackTrace();
} catch (IOException e2) {
// TODO Auto-generated catch block
Log.e("getpage",e2.toString());
e2.printStackTrace();
}
String html = "";
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(response.getEntity().getContent(), "UTF-8"));
StringBuilder builder = new StringBuilder();
for (String line = null; (line = reader.readLine()) != null ;) {
builder.append(line).append("\n");
}
html = builder.toString();
Log.d("nr",builder.capacity() + "/" + builder.length());
} catch (IOException e) {
// TODO Auto-generated catch block
Log.e("getpage",e.toString());
e.printStackTrace();
}finally{
}
return html;
}
任何幫助,將不勝感激。我不知所措......
試圖實現從類似的問題的解決方案:HTTP:// stackoverflow.com/questions/9720381/http-get-request-is-missing-data – Roman
感謝,似乎是在正確的軌道上。但是,我在實現它時遇到了麻煩,因爲它在字節數據中的讀取,我需要一個字符串。我該如何轉換? – Chris