在实际工作中我们可能要在服务端调用https的接口,但是在用httpclient调用接口时会报一些安全的错误,要想调通接口这个问题,需要在jdk中导入安全证书
1. 获取证书
根据具体实际情况获取证书,是在浏览器获取证书(百度一下很多)还是第三方对接给的证书
例如:拿到了test.cer证书文件,将文件放入D:/cer/ 文件夹下
D:/cer 这个路径随便更改,不用必须跟我一样
2. 查看本地jdk安装路径
查看本地jdk安装路径,例如:C:\Program Files\Java\jdk1.8.0_321
证书要导入到:C:\Program Files\Java\jdk1.8.0_321\jre\lib\security\cacerts
文件中
3. 打开PowerShell以管理员方式运行
点击windows菜单输入PowerShell
4. 输入命令
用keytool工具导入证书,在PowerShell面板中输入命令
keytool -import -trustcacerts -alias test -file D:\cer\test.cer -keystore C:\Program Files\Java\jdk1.8.0_321\jre\lib\security\cacerts -storepass changeit
changeit 是默认密码
alias 后面跟的是别名,可以随便起
file 是证书的绝对路径
5. 命令各参数解释
当出现是否信任此证书输入:y
到此证书已成功导入,可以在代码中调用证书对应的https接口文章来源:https://www.toymoban.com/news/detail-803879.html
6. 可能遇到的问题
在导入证书的时候可能会遇到非法选项的错误
这里本人遇到的问题是,在命令中写绝对路径C:/Program Files/Java/jdk1.8.0_321
就报非法选项的错误
如果遇到路径这种相似的问题,我们解决办法是,进入到具体cacerts文件路径下去执行命令
在PowerShell下进入security路径
在此路径下输入命令即可成功文章来源地址https://www.toymoban.com/news/detail-803879.html
keytool -import -trustcacerts -alias test -file D:\cer\test.cer -keystore cacerts -storepass changeit
到了这里,关于windows 使用Keytool为JDK添加https证书信任(cer证书)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!