当Android试图连接到Captive Portal时,我尝试在重定向之前获取HTTP数据。
下面是代码片段:
httpclient = new DefaultHttpClient(/*params*/);
String url = "http://google.com";
Log.d("test_runner", "URL: " + url);
HttpGet httpget = new HttpGet(url);
HttpResponse response = httpclient.execute(httpget);
HttpEntity entity = response.getEntity();
if (entity != null) {
entity.consumeContent();
}
for(Header h : response.getAllHeaders()){
Log.d("test_runner", h.toString());
}
Log.d("test_runner", response.getStatusLine().getStatusCode() + "");
response.getStatusLine();当我使用Fiddler Web Debugger时,我看到下面的流:

所以第一次我需要接收状态302和重定向状态200之后。
然而,我直接得到回应后,重定向。

听起来,Android会自动重定向,但我抓不到它。
如何在重定向之前获取响应信息(a.e。Fiddler的第1行,报头为302)?
谢谢
发布于 2013-07-08 16:03:06
我找到了解决办法,(没这么快想)
HttpParams params = new BasicHttpParams();
HttpClientParams.setRedirecting(params, false);
httpclient = new DefaultHttpClient(params);
....https://stackoverflow.com/questions/17530896
复制相似问题