我正在尝试使用java.net。* libs捕获具有301状态代码的HTTP,而不是直接使用套接字。 但问题是HttpURLConnection.getResponseCode()此方法不返回301状态代码,而是当遇到带有301状态代码的标题时,它会自动在URL后面放一个斜杠并重试,显然它会返回200状态代码,任何警告或通知就像浏览器一样。我想要的是从HttpURLConnection.getResponseCode()返回301状态代码。 这是我的代码:
domain.http_Con = (HttpURLConnection)url.openConnection();
int res = domain.http_Con.getResponseCode();
System.out.print(res);
如果它是301,我只想要res 301。
P.S: 我想通过301检测目录。
答案 0 :(得分:4)
默认情况下,HttpURLConnection
会遵循重定向(例如301)。只需在连接前禁用它:
httpCon.setInstanceFollowRedirects(false);
httpCon.connect();
int res = httpCon.getResponseCode(); // should now return 301
<强>参考文献:强>