gpt4 book ai didi

java - 无法找到请求目标的有效证书路径 - java

转载 作者:行者123 更新时间:2023-12-02 16:15:09 25 4
gpt4 key购买 nike

我正在尝试使用 HttpClient 连接到网站目的。它适用于我们通常使用的网站(如谷歌)。但是有一个网站,当我尝试连接时,我的程序给出了这个错误..

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
at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1917)
at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:301)
at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:295)
at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1369)
....................
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:387)
at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:292)
at sun.security.validator.Validator.validate(Validator.java:260)
...............

Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:145)
at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:131)
at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:280)
at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:382)
... 27 more

当我尝试从浏览器访问此网址时,我必须点击仍然继续。否则浏览器将无法加载该页面。它会给出隐私错误,指出您的连接不是私有(private)的

如何在我的 java 应用程序中克服这个问题..?我希望我的软件能够与该网址连接,没有任何错误或不要求任何确认。

最佳答案

当我使用 TrustSelfSignedStrategy 时问题得到解决对象作为 HttpClient 的信任 Material .

        httpClient = HttpClients.custom()
.setSSLSocketFactory(new SSLConnectionSocketFactory(SSLContexts.custom()
.loadTrustMaterial(null, new TrustSelfSignedStrategy())
.build()
)
).build();

我使用的代码如上面所示..

关于java - 无法找到请求目标的有效证书路径 - java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30078081/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com