//关于http 需要两个jar包 httpclient-4.0.jar httpcore-4.0.1.jar
private static final HttpClient httpClient = new DefaultHttpClient();
try {
//获得密匙库
KeyStore trustStore = KeyStore.getInstance("jks");
String keyStoreFile = "xxxxx.keystore";
String keyPwd = "xxxxxxx";
FileInputStream instream = new FileInputStream(new File(keyStoreFile));
//密匙库的密码
trustStore.load(instream, keyPwd.toCharArray());
//注册密匙库
SSLSocketFactory socketFactory = new SSLSocketFactory(trustStore);
//不校验域名
socketFactory.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
Scheme sch = new Scheme("https", socketFactory, 443);
httpClient.getConnectionManager().getSchemeRegistry().register(sch);
} catch (Exception e) {
e.printStackTrace();
}
//下面这段是调用代码,可以有很多种写法,不局限于用HttpPost
HttpPost httpPost = new HttpPost( url );
StringEntity entity = new StringEntity(params);
entity.setContentEncoding("UTF-8");
httpPost.setEntity( entity );
//发送请求
HttpResponse response = httpClient.execute( httpPost );
String jsonStr = EntityUtils.toString( response.getEntity() );
JAVA实现https单向认证
最新推荐文章于 2024-06-28 18:20:21 发布