request - Java如何与https服务通信(StartCom+Nginx)

 那朵逆风的蔷薇_708 发布于 2022-11-04 20:58

最近申请了一个startCom的一个免费ssl,然后配置到自己的nginx(Nginx转发8080的tomcat服务)上。

一开始用unirest想获取页面信息,结果现实这个错误:

Caused by: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: 
PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: 
unable to find valid certification path to requested target

后来在本地导入了两个StartCom的crt文件,所以这个错误就不存在了。

问题是:如果我想让别人也可以通过java代码来向这个https的服务发request,如何让他们正常获取数据?---- 难道需要我分享那两个crt文件?

PS:我发现直接java获取https://github.com一点问题也没有。
求大家指点,谢谢!

2 个回答
  • Root Cause是你申请的SSL证书不被你的系统所信任。解决方法是:
    1. 换个证书
    2. 手动跳过TrustManager的验证步骤(存在安全性风险)

    2022-11-08 17:25 回答
  • java访问https的链接我曾经玩过,记得有两种办法,
    一种是装那个网站的证书,类似导入证书介绍的,当时我也是通过这种方式实现了模拟登录某票网站。
    第二种貌似是类似绕过证书,绕过服务器证书检测

    2022-11-08 17:27 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有