我使用下面的代码来获取一个网页的源代码,这是一个纯文本(没有html标签)从局域网上的get服务器。但我总是得到空字符串返回,如果我在浏览器中打开相同的URI,我可以看到文本。以下是我的代码:
String url = "http://192.168.1.40/touchscreens/get.qsp?display=1";
HttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet();
request.setHeader("Content-Type", "text/plain; charset=utf-8");
request.setURI(new URI(url));
HttpResponse response = client.execute(request);
in = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
StringBuffer sb = new StringBuffer("");
String line = "";
String NL = System.getProperty("line.separator");
while ((line = in.readLine()) != null) {
sb.append(line + NL);
}
String page = sb.toString();
Toast.makeText(getApplicationContext(), page, Toast.LENGTH_LONG).show();还有一件事,当我在android模拟器浏览器中输入相同的URL时,我什么也看不到。我是不是遗漏了什么?
发布于 2012-01-17 05:06:18
我建议你应该使用fiddler调试你的超文本传输协议请求(参见http://www.fiddler2.com/fiddler2/)。这将调试来自您的浏览器和应用程序的互联网请求,并显示您的请求是否缺少必要的标头。
https://stackoverflow.com/questions/8886016
复制相似问题