我正在使用Java 1.7。
当我在Firefox中使用Postman测试请求时,我得到一个响应状态:200,并且Json响应很好。
当我使用我的Java应用程序测试它时,我得到了这个例外:
java.net.ProtocolException:服务器重定向次数过多(20)
这是我的java代码:
try{
String charset = "UTF-8";
URL url = new URL("http://example.com/ws");
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("Accept-Charset", charset);
con.setRequestProperty("token", "mytokenvalue");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
}catch(Exception ex){
ex.printStackTrace();
}
此行引发异常:
int responseCode = con.getResponseCode();
答案 0 :(得分:2)
打开连接之前,您必须设置此属性:
HttpURLConnection.setFollowRedirects(false);