博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
https请求带证书发送报文
阅读量:4879 次
发布时间:2019-06-11

本文共 1639 字,大约阅读时间需要 5 分钟。

public String sendXml(String sendurl, String sendData) throws Exception {

File trustedKeystoreFile = new File(sslTrustStore);
BufferedReader reader = null;
CloseableHttpResponse resp = null;
String resultuestStr1 = null;
try {
SSLContext sslcontext = SSLContexts.custom().loadTrustMaterial(null, new TrustSelfSignedStrategy())
.loadKeyMaterial(trustedKeystoreFile, sslTrustStorePassword.toCharArray(),
sslTrustStorePassword.toCharArray())
.build();

SSLConnectionSocketFactory sslSocketFactory = new SSLConnectionSocketFactory(sslcontext,

new String[] { "TLSv1.2", "TLSv1.1", "TLSv1" }, null, new NoopHostnameVerifier());

CloseableHttpClient client = HttpClients.custom().setSSLSocketFactory(sslSocketFactory).build();

HttpPost post = new HttpPost(sendurl);
HttpEntity entity = new StringEntity(sendData, "utf-8");
post.setHeader("Content-type", "text/xml");
post.setEntity(entity);
resp = client.execute(post);
reader = new BufferedReader(new InputStreamReader(resp.getEntity().getContent()));
StringBuilder dataString = new StringBuilder();
String inputLine;
while ((inputLine = reader.readLine()) != null) {
dataString.append(inputLine).append("\n");
}
resultuestStr1 = dataString.toString().replace("&lt;", "<");
} catch (KeyManagementException e1) {
e1.printStackTrace();
} catch (UnrecoverableKeyException e1) {
e1.printStackTrace();
} catch (NoSuchAlgorithmException e1) {
e1.printStackTrace();
} catch (KeyStoreException e1) {
e1.printStackTrace();
} catch (CertificateException e1) {
e1.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}
return resultuestStr1;
}

转载于:https://www.cnblogs.com/wyllxx/p/9376824.html

你可能感兴趣的文章
Matlab控制系统的建模及模型间的转换
查看>>
面向对象编程思想
查看>>
showModalDialog打开一个子窗口,在子窗口添加一条记录后,关闭子窗口刷新父窗口...
查看>>
微信支付体验
查看>>
Excel导数据到数据库
查看>>
zz 悲催的程序员,以及程序员的悲催
查看>>
Flv.js
查看>>
Java工程师成神之路
查看>>
线程池ThreadPoolExecutor整理
查看>>
如何将离线的PIP安装包快速安装好
查看>>
应对通过代理攻击服务器的方法
查看>>
TIPSO--基于JQUERY的消息提示框插件,用起来蛮顺手
查看>>
散列表(哈希表)
查看>>
Linux基础命令---显示域名ypdomainname
查看>>
Rails学习笔记(1)-Ubuntu12.04下的环境配置
查看>>
LeetCode - Remove Duplicates from Sorted Array
查看>>
object.__getattr__(self, name) 、object.__setattr__(self, name, value)
查看>>
环境光
查看>>
ExtJS基础篇
查看>>
Javassist字节码强化
查看>>