package com.iailab.common.utils;
|
|
|
import org.apache.http.conn.ClientConnectionManager;
|
import org.apache.http.conn.scheme.Scheme;
|
import org.apache.http.conn.scheme.SchemeRegistry;
|
import org.apache.http.conn.ssl.SSLSocketFactory;
|
import org.apache.http.impl.client.DefaultHttpClient;
|
|
import javax.net.ssl.SSLContext;
|
import javax.net.ssl.TrustManager;
|
import javax.net.ssl.X509TrustManager;
|
import java.security.cert.CertificateException;
|
import java.security.cert.X509Certificate;
|
|
/**
|
* @author PanZhibao
|
* @date 2021年06月03日 15:35
|
*/
|
public class SSLClient extends DefaultHttpClient {
|
public SSLClient() throws Exception {
|
super();
|
//传输协议需要根据自己的判断
|
SSLContext ctx = SSLContext.getInstance("TLS");
|
X509TrustManager tm = new X509TrustManager() {
|
@Override
|
public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException {
|
}
|
|
@Override
|
public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException {
|
}
|
|
@Override
|
public X509Certificate[] getAcceptedIssuers() {
|
return null;
|
}
|
};
|
ctx.init(null, new TrustManager[]{tm}, null);
|
SSLSocketFactory ssf = new SSLSocketFactory(ctx, SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
|
ClientConnectionManager ccm = this.getConnectionManager();
|
SchemeRegistry sr = ccm.getSchemeRegistry();
|
sr.register(new Scheme("https", 443, ssf));
|
}
|
}
|