gpt4 book ai didi

java - 查看 HTTPS url 是否在线

转载 作者:行者123 更新时间:2023-11-29 05:58:22 25 4
gpt4 key购买 nike

如果安全网站的证书由 CA 签名,我需要一个返回 true 的函数。在 Android 中,如果您尝试连接到自签名证书,它会抛出 SSLException,在这种情况下,我只是捕获它并返回 false。你可以检查代码:

public static boolean isValidCertificate(URL url) throws IOException {
HttpsURLConnection con;
try {
con = (HttpsURLConnection) url.openConnection();
con.connect();
con.disconnect();
return true;
} catch (SSLException e) {
return false;
}
}

我的问题是我希望函数在站点不可用时抛出异常。但我刚刚发现 Android 在这种情况下会抛出相同的 SSLException,并显示相同的消息:“没有受信任的服务器证书”。

无论证书是否有效,有什么方法可以知道服务器是否在线?

谢谢!

最佳答案

使用“https://flimflam.asdfasdfasdfg.com”等虚假 URL 对其进行测试,看看您的情况会发生什么。

如果没有基于 openConnection 方法建立连接,则应该触发 IOException。这很可能更像是超时,您将花费时间等待超时期限。

关于java - 查看 HTTPS url 是否在线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11143148/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com