我正在编写一个 android 应用程序,它应该从我的网络服务器获取一些数据。因此,我想从我的应用程序向服务器发出一个简单的 http get 请求。为了测试东西,我在我的 android 应用程序中写了一个简单的函数:
val updateUrl = URL("https://www.myserver.com/info")
fun getNewestVersion():String {
return updateURL.readText().trim()
}
如果我在浏览器中请求该 url,浏览器不会抱怨任何事情,只会打印纯版本号文本:
0.1.0
如果我从应用程序发出该请求,它会崩溃,并且在我发现的 logcat 日志中:
FATAL EXCEPTION: DefaultDispatcher-worker-1
Process: com.example.app, PID: 25510
javax.net.ssl.SSLHandshakeException:
java.security.cert.CertPathValidatorException:Trust anchor for certification path not found.
PS:服务器具有由 DigiCert RapidSSL Global TLS RSA4096 SHA256 2022 CA1 签名的有效 SSL 证书,这很有帮助