java 忽略 https 验证_java httpclient跳过https证书验证

httpclien调用skipHttpsUtil得wrapClient方法跳过https证书验证

SkipHttpsUtil  skipHttpsUtil=new SkipHttpsUtil();

CloseableHttpClient httpclient = null;

CloseableHttpResponse response = null;

try {

httpclient =  (CloseableHttpClient)skipHttpsUtil.wrapClient();

HttpPost post = new HttpPost(url);

String json = "{\"image\":\""+"ddd"+

"\",\"Type\":\""+"ddddd"+

"\",\"Flag\":\""+"dddd"+"\"}";

StringEntity postingString = new StringEntity(json,"utf-8");// json传递

post.setEntity(postingString);

post.setHeader("Content-type", "application/json");

response = httpclient.execute(post);

String result = EntityUtils.toString(response.getEntity());

JSONObject js=JSONObject.parseObject(result);

} catch (Exception e) {

e.printStackTrace();

mResultCode = "E";

return false;

} finally {

try {

response.close();

httpclient.close();

} catch (IOException e) {

e.printStackTrace();

mResultCode = "E";

return false;

}

}

skipHttpsUtil类

package com.life.util;

import java.security.cert.CertificateException;

import java.security.cert.X509Certificate;

import javax.net.ssl.SSLContext;

import javax.net.ssl.TrustManager;

import javax.net.ssl.X509TrustManager;

import org.apache.http.client.HttpClient;

import org.apache.http.conn.ssl.NoopHostnameVerifier;

import org.apache.http.conn.ssl.SSLConnectionSocketFactory;

import org.apache.http.impl.client.CloseableHttpClient;

import org.apache.http.impl.client.HttpClients;

import org.apache.log4j.Logger;

/**

*

* ClassName: SkipHttpsUtil

*

*

* Description: httpclient跳过https验证

*

*

* Copyright: Copyright (c) 2019

*

*

* Company: service

*

* @author: maojinqiang

* @CreateDate: 2019-08-26

*/

public class SkipHttpsUtil {

private static Logger logger = Logger.getLogger(SkipHttpsUtil.class);

//绕过证书

public static HttpClient wrapClient() {

try {

SSLContext ctx = SSLContext.getInstance("TLS");

X509TrustManager tm = new X509TrustManager() {

public X509Certificate[] getAcceptedIssuers() {

return null;

}

public void checkClientTrusted(X509Certificate[] arg0,

String arg1) throws CertificateException {

}

public void checkServerTrusted(X509Certificate[] arg0,

String arg1) throws CertificateException {

}

};

ctx.init(null, new TrustManager[] { tm }, null);

SSLConnectionSocketFactory ssf = new SSLConnectionSocketFactory(

ctx, NoopHostnameVerifier.INSTANCE);

CloseableHttpClient httpclient = HttpClients.custom()

.setSSLSocketFactory(ssf).build();

return httpclient;

} catch (Exception e) {

return HttpClients.createDefault();

}

}

public static void main(String[] args) {

}

}

你可能感兴趣的:(java,忽略,https,验证)