对于Android中的网络部分,我不是那么好。所以我在这里使用POST服务。当URL在前缀中使用http://时,以下代码正常工作。那时我正在使用HttpURLConnection API。但是使用TLS提供URL时出现问题。从现在开始我需要使用https://。所以我在代码中将HttpURLConnection更改为HttpsURLConnection。但我不知道为什么我会得到这个例外。 Here is my code
答案 0 :(得分:0)
我遇到了类似的问题..
我已经解决了这个问题:
public static OkHttpClient getHttpClient() {
ConnectionSpec spec = new ConnectionSpec.Builder(ConnectionSpec.MODERN_TLS)
.tlsVersions(TlsVersion.TLS_1_0)
.cipherSuites(
CipherSuite.TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,
CipherSuite.TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
CipherSuite.TLS_DHE_RSA_WITH_AES_128_GCM_SHA256,
CipherSuite.TLS_DHE_RSA_WITH_AES_128_CBC_SHA,
CipherSuite.TLS_RSA_WITH_AES_128_CBC_SHA,
CipherSuite.TLS_RSA_WITH_3DES_EDE_CBC_SHA)
.build();
return new OkHttpClient.Builder()
.connectTimeout(2, TimeUnit.MINUTES)
.writeTimeout(2, TimeUnit.MINUTES)
.readTimeout(3, TimeUnit.MINUTES)
.connectionSpecs(Collections.singletonList(spec))
.protocols(Arrays.asList(Protocol.HTTP_1_1))
.build();
}
你可以试试这个。