0

我正在使用 JSOUP 连接到网页并通过网页抓取方法获取一些内容。几个月来一切似乎都运行良好,但最近开始出现此错误。

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

我已经添加了网页的证书(从 chrome explorer,base64 cer 下载了证书)并使用此命令添加到我的 java cacert

keytool -import -alias certificatebase64-2 -keystore "C:\Program Files\Java\jdk-11.0.10\lib\security\cacerts" -file certificate-base64.cer

我还在我的 windows 机器上安装了证书,因为在这台机器上运行 java 应用程序,使用证书 windows 助手右键单击证书 -> 安装证书 -> 本地机器 -> 并手动选择“受信任的根证书”当局”

在这两个步骤之后,应用程序再次开始正常工作,但几个小时后错误再次弹出。

我发现的解决方法是执行上面解释的相同命令以再次将证书添加到我的 cacerts(必须更改导入的名称)

这是我使用 JSOUP 连接到网页的方式

Connection.Response response = Jsoup.connect("https://www.test.store/us/").method(Connection.Method.GET)
                    .execute();

我似乎无法找到此错误的根本原因,以及为什么在我再次导入证书几个小时后它无法工作。

4

0 回答 0