Android:HttpURLConnection重定向 - 可能已缓存

时间:2015-08-04 14:12:25

标签: android httpurlconnection

当我有多个重定向和多个调用时,我遇到HTTP调用问题。让我们有以下代码:

con = (HttpURLConnection) (new
URL("http://server/?function=auth/fetch_internal_ip")).openConnection();
HttpURLConnection.setFollowRedirects(false);
con.setRequestMethod("GET");
con.setDoInput(true);
con.setDoOutput(true);
con.setConnectTimeout(1000);
con.setReadTimeout(1000);
con.connect(); StringBuffer buffer = new StringBuffer();
is = con.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String line;
while ((line = br.readLine()) != null)
buffer.append(line).append("\r\n");
is.close();
con.disconnect();
is = null;
ip = buffer.toString().trim();

首先使用效果很好,但对于未来的任何其他用户都不会重定向。只有重新安装应用程序或重新启动手机才有帮助。

哪里可能有问题?

2 个答案:

答案 0 :(得分:0)

您的问题不是很清楚,但如果您的请求被缓存有问题,可以尝试使用con.setUseCaches(false)

答案 1 :(得分:0)

HttpURLConnection.setFollowRedirects(false);:这会为以下连接全局禁用重定向,如果要重定向,则必须删除此行。