我使用了以下代码进行连接:
URL url = new URL("https://results.bput.ac.in/");
HttpURLConnection urlc = (HttpURLConnection) url.openConnection();
urlc.setConnectTimeout(1000 * 20);
urlc.connect();
返回了一个SocketTimeoutException。
异常
我得到的确切异常是:
java.net.SocketTimeoutException: failed to connect to results.bput.ac.in/14.139.212.166 (port 443) after 90000ms
有时候也会出现这种情况 -
java.net.SocketTimeoutException: failed to connect to results.bput.ac.in/14.139.212.166 (port 80) after 90000ms
- 尝试删除
urlc.setConnectTimeout(1000 * 20);
但仍然出现异常。 - 使用 http 替代 https,
URL url = new URL("http://results.bput.ac.in/");
,但没有得到结果。 - 使用
URL url = new URL("https://www.facebook.com/");
测试成功。 - 更改超时时间后仍然出现相同的异常。
问题出在这个特定的链接上 - http://results.bput.ac.in/
。
信息
我提供的链接 http://results.bput.ac.in/
在任何网络浏览器上都可以完美地运行,没有任何延迟。
我得知有些人无法打开此网站,它会卡顿,但是我可以毫无卡顿地打开它。
我的研究
我已经尝试过这个SO问题、这个SO问题、这个Github解决方案和Java代码极客解决方案,但都没有得到结果。
更新
我已经使用我的Wi-Fi和移动数据进行了测试,因为我认为我的路由器可能在端口上有些问题。但是我也用移动数据得到了相同的异常。
有没有人有解决办法呢?