|
11 | 11 | import org.houxg.leamonax.network.api.UserApi; |
12 | 12 |
|
13 | 13 | import java.io.IOException; |
| 14 | +import java.util.concurrent.TimeUnit; |
| 15 | + |
| 16 | +import javax.net.ssl.HostnameVerifier; |
| 17 | +import javax.net.ssl.SSLContext; |
| 18 | +import javax.net.ssl.SSLSession; |
| 19 | +import javax.net.ssl.SSLSocketFactory; |
| 20 | +import javax.net.ssl.TrustManager; |
| 21 | +import javax.net.ssl.X509TrustManager; |
14 | 22 |
|
15 | 23 | import okhttp3.HttpUrl; |
16 | 24 | import okhttp3.Interceptor; |
@@ -70,6 +78,37 @@ public void log(String message) { |
70 | 78 | builder.addNetworkInterceptor(interceptor); |
71 | 79 | builder.addNetworkInterceptor(new StethoInterceptor()); |
72 | 80 | } |
| 81 | + final TrustManager[] trustAllCerts = new TrustManager[]{ |
| 82 | + new X509TrustManager() { |
| 83 | + @Override |
| 84 | + public void checkClientTrusted(java.security.cert.X509Certificate[] chain, String authType) { |
| 85 | + } |
| 86 | + |
| 87 | + @Override |
| 88 | + public void checkServerTrusted(java.security.cert.X509Certificate[] chain, String authType) { |
| 89 | + } |
| 90 | + |
| 91 | + @Override |
| 92 | + public java.security.cert.X509Certificate[] getAcceptedIssuers() { |
| 93 | + return new java.security.cert.X509Certificate[]{}; |
| 94 | + } |
| 95 | + } |
| 96 | + }; |
| 97 | + try { |
| 98 | + final SSLContext sslContext = SSLContext.getInstance("SSL"); |
| 99 | + sslContext.init(null, trustAllCerts, new java.security.SecureRandom()); |
| 100 | + final SSLSocketFactory sslSocketFactory = sslContext.getSocketFactory(); |
| 101 | + builder.sslSocketFactory(sslSocketFactory, (X509TrustManager) trustAllCerts[0]); |
| 102 | + builder.hostnameVerifier(new HostnameVerifier() { |
| 103 | + @Override |
| 104 | + public boolean verify(String hostname, SSLSession session) { |
| 105 | + return true; |
| 106 | + } |
| 107 | + }); |
| 108 | + } catch (Exception e) { |
| 109 | + e.printStackTrace(); |
| 110 | + } |
| 111 | + builder.connectTimeout(20, TimeUnit.SECONDS).readTimeout(20, TimeUnit.SECONDS); |
73 | 112 | OkHttpClient client = builder.build(); |
74 | 113 | mApiRetrofit = new Retrofit.Builder() |
75 | 114 | .baseUrl(host + "/api/") |
|
0 commit comments