我这样做了:
response = httpclient.execute(targetHost, httppost);
if(response.getStatusLine().getStatusCode() == 200)
{
httpentity entity = response.getEntity();
System.out.println("Entity:"+entity);
if (entity != null)
{
String responseBody = EntityUtils.toString(entity);
System.out.println("finalResult"+responseBody.toString());
}
关于它的事情是第一个println()显示:org.apache.http.conn.BasicManagedEntity@481e8150这是好的.
但第二个System.out.println(“finalResult”responseBody.toString());仅显示此finalResult.那么这有什么问题:
String responseBody = EntityUtils.toString(entity);
System.out.println("finalResult"+responseBody.toString());
???
重要信息此httpentity实体= response.getEntity();等于org.apache.http.conn.BasicManagedEntity@481e8150.所以问题必须在这里:
String responseBody = EntityUtils.toString(entity);.
请帮忙!!!
解决方法:
首先,查看您的服务器是否未返回空白响应:
response.getEntity().getContentLength(); //it should not be 0
其次,尝试以下方法将响应转换为字符串:
StringBuilder sb = new StringBuilder();
try {
BufferedReader reader =
new BufferedReader(new InputStreamReader(entity.getContent()), 65728);
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line);
}
}
catch (IOException e) { e.printstacktrace(); }
catch (Exception e) { e.printstacktrace(); }
System.out.println("finalResult " + sb.toString());
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。