Https SSL加密Rest Cilent访问,证书不通过的问题

本文介绍了在使用Java的javax.ws.rs和HttpClient访问HTTPS URL时遇到的证书不通过问题。详细讨论了SSLHandshakeException的错误,包括"No subject alternative names present"和"PKIX path building failed"。尝试了通过生成自签名证书和添加到信任库的方法,但未成功。最终,通过引入jersey-client、jersey-core和jersey-json的jar包,实现了对带有不可信SSL证书的REST API服务的访问。
摘要由CSDN通过智能技术生成

近期要写一个Rest Client访问HTTPS协议的URL,用Post方式以JSON格式拿回URL的数据。最开始选择的Client是javax.ws.rs-2.0.jar这个jar包,Client的创建方式是:

Client client = ClientBuilder.newClient();

遇到的第一个问题就是证书不通过,具体如下:

SEVERE: Error while committing the request output stream.
javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No subject alternative names present

网上折腾了半天,想到换一种Client的创建方式,如下:

Client client = ClientBuilder.newBuilder().hostnameVerifier(new HostnameVerifier() {
			@Override
			public boolean verify(String hostname, SSLSession session) {
				// TODO Auto-generated method stub
				return true;
			}
	}).build();
这样之后,出现一个新的问题,如下:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值