有些https证书是我们自建的,没有经过ca机构验证的,比如我们的内部服务器环境,测试环境,在java中去请求这类https会报证书问题,有的人说直接在代码里写死直接信任所有https请求,我不建议这么处理,其实只需要两步搞定
第一步 下载你的证书
证书你可以自己生成的时候会有,没有也不要紧,我这里举个列子怎么从chrome谷歌浏览器导出所需证书
给你的证书取个有意义的名字,然后保存到本地一个路径中,第一步搞定
第二步 导入证书
你的项目用的那个jdk 就往那个jdk中的导入,说白了jdk的security这个文件夹中的cacerts这个文件是存放所有信任证书的,你找到自己jdk的这个文件位置 ,打开cmd导入证书,不识别这个命令的自行整环境变量
keytool -import -alias mycertname -keystore C:\Program Files (x86)\Java\jre1.8.0_22\lib\security\cacerts -file mycertname.cer
导入正式添默认密码: changeit
然后重启你的项目,搞定!