我使用代码
public static int getResponseCode(String urlString) throws MalformedURLException, IOException {
URL u = new URL(urlString);
HttpURLConnection huc = (HttpURLConnection) u.openConnection();
huc.setRequestMethod("GET");
huc.connect();
return huc.getResponseCode();
}
以获取响应代码。当我运行代码时,我收到异常java.net.ConnectException: 连接超时 at java.net.PlainSocketImpl.socketConnect(Native Method)
我打印了导致此错误的URl,然后将其加载到浏览器中。 链接已加载,但一段时间后,大约 2 分钟。不返回状态代码的原因可能是什么?我该如何处理这种情况?
感谢您的帮助!
莎莉
尝试在huc.connect()
之前调用huc.setReadTimeout(120000);
。
但是,我担心您的服务器端出了问题。为什么在~2分钟后回复?
您说在浏览器中加载内容需要 2 分钟。最有可能的是,您的连接超时。您可以尝试将更长的连接超时设置为 3 分钟(以毫秒为单位)
huc.setConnectTimeout(1800000);
如果问题不是超时,则很可能您必须为连接设置代理。检查浏览器中的代理设置并设置适当的值。 例如,请参阅这个问题,了解如何做到这一点。