javax.net.ssl.SSLException 两种解决方法 链接https接口

1.第一种就是报错咱绕开验证这个环节

先创建一个类  MyX509TrustManager 

import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;

import javax.net.ssl.X509TrustManager;

public class MyX509TrustManager implements X509TrustManager{

	@Override
	public void checkClientTrusted(X509Certificate[] arg0, String arg1) throws CertificateException {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void checkServerTrusted(X509Certificate[] arg0, String arg1) throws CertificateException {
		// TODO Auto-generated method stub
		
	}

	@Override
	public X509Certificate[] getAcceptedIssuers() {
		// TODO Auto-generated method stub
		return null;
	}

}

然后发送请求HttpURLConnection 的方式

SSLContext sslcontext = SSLContext.getInstance("SSL","SunJSSE");  
            sslcontext.init(null, new TrustManager[]{new MyX509TrustManager()}, new java.security.SecureRandom());  
            URL url = new URL(urlPath);  
            HostnameVerifier ignoreHostnameVerifier = new HostnameVerifier() {  
                public boolean verify(String s, SSLSession sslsession) {  
                    System.out.println("WARNING: Hostname is not matched for cert.");  
                    return true;  
                }  
            }; 
            HttpsURLConnection.setDefaultHostnameVerifier(ignoreHostnameVerifier);
            HttpsURLConnection.setDefaultSSLSocketFactory(sslcontext.getSocketFactory());
            //这边是HttpURLConnection
            HttpURLConnection conn = (HttpURLConnection)url.openConnection();

如果一头雾水传送门

2.方法2就是正面刚,就是要搞证书 https接口测试:java导入cer证书步骤

先来个传送门

有个注意点就是执行

keytool -import -alias cacerts -keystore cacerts -file C:\Users\Administrator\Desktop\onecc.cer -trustcacerts

这个加红的是你的cer 名字。

并且执行这个语句的时候必须在你的

D:\jdk1.7.0_80\jre\lib\security  这个下面执行

系统是windows    恰巧你的环境变量不在c 盘

这样进入你对应的盘  不要cd 坑人!

最后补充一下查询你的证书有没有安装上的代码

keytool -list -keystore cacerts | findstr /s zrzf

有错误欢迎指正。

记得按时吃饭

by 张小白

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值