HttpClient的返回胡言乱语 [英] httpclient returns gibberish
本文介绍了HttpClient的返回胡言乱语的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图使用了HTTPClient获得一个页面,但它似乎返回胡言乱语(我认为二进制)。
I'm trying to use HTTPClient to get a page, but it seems to return gibberish (I think binary).
下面是我的code:
public Boolean getPage(String url, String referer) {
httpClient.getParams().setParameter("http.protocol.version", HttpVersion.HTTP_1_1);
httpClient.getParams().setParameter("http.socket.timeout", new Integer(1000));
httpClient.getParams().setParameter("http.protocol.content-charset", "UTF-8");
HttpGet httpGet = new HttpGet(url);
response = null;
httpGet.setHeader("User-Agent", "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3");
httpGet.setHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
httpGet.setHeader("Accept-Charset", "ISO-8859-1,utf-8;q=0.7,*;q=0.7");
httpGet.setHeader("Accept-Encoding", "gzip,deflate");
httpGet.setHeader("Referer", referer);
int tryNumber = 0;
while(tryNumber<5){
tryNumber++;
try {
ResponseHandler<String> responseHandler = new BasicResponseHandler();
ret = httpClient.execute(httpGet,responseHandler).toString();
Log.v("Info:", ret);
}
catch(Exception e) {
error = e;
break;
}
}
}
任何人都可以指出我要去哪里错了?
Can anyone point out where I'm going wrong?
我试图让这个页面的内容: http://hosh.me.uk/ test.php的
I'm trying to get the content of this page: http://hosh.me.uk/test.php
看截图: http://img.ctrlv.in/4ecd69c40a590.jpg
围场
推荐答案
只是一个猜测,但它可能是响应为com pressed?也许你应该删除以下行让你的反应将是纯文本。
Just a guess, but could it be that the response is compressed? Maybe you should remove the following line so your response will be plain text.
httpGet.setHeader("Accept-Encoding", "gzip,deflate");
这篇关于HttpClient的返回胡言乱语的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文