您当前的位置: 首页 >  网络

命运之手

暂无认证

  • 0浏览

    0关注

    747博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【Android】【网络请求】OkHttp设置万能SSL证书,允许所有https请求

命运之手 发布时间:2019-10-24 22:32:26 ,浏览量:0

SSL证书管理器


	public class SSL {
	
	    @SneakyThrows
	    public static SSLSocketFactory sslSocketFactory() {
	        SSLContext sslContext = SSLContext.getInstance("SSL");
	        sslContext.init(null, getTrustManager(), new SecureRandom());
	        return sslContext.getSocketFactory();
	    }
	
	    public static X509TrustManager trustManager() {
	        return new X509TrustManager() {
	            @Override
	            public void checkClientTrusted(X509Certificate[] x509Certificates, String message) {
	            }
	
	            @Override
	            public void checkServerTrusted(X509Certificate[] x509Certificates, String message) {
	            }
	
	            @Override
	            public X509Certificate[] getAcceptedIssuers() {
	                return new X509Certificate[]{};
	            }
	        };
	    }
	
	    private static TrustManager[] getTrustManager() {
	        return new TrustManager[]{new X509TrustManager() {
	            @Override
	            public void checkClientTrusted(X509Certificate[] x509Certificates, String message) {
	            }
	
	            @Override
	            public void checkServerTrusted(X509Certificate[] x509Certificates, String message) {
	            }
	
	            @Override
	            public X509Certificate[] getAcceptedIssuers() {
	                return new X509Certificate[]{};
	            }
	        }};
	    }
	
	    public static HostnameVerifier hostnameVerifier() {
	        return (message, hostnameVerifier) -> true;
	    }
	
	}

OkHttp设置证书管理器


	 clientBuilder.sslSocketFactory(SSL.sslSocketFactory(), SSL.trustManager());
	 clientBuilder.hostnameVerifier(SSL.hostnameVerifier());

关注
打赏
1654938663
查看更多评论
立即登录/注册

微信扫码登录

0.0394s