在 Java 中,PKIX 路径验证是一种验证 SSL/TLS 证书链的机制。当使用 HTTPS 连接时,如果出现“PKIX path building failed”的错误,可以尝试使用以下代码禁用证书检查:
TrustManager[] trustAllCerts = new TrustManager[] {
new X509TrustManager() {
public X509Certificate[] getAcceptedIssuers() {
return null;
}
public void checkClientTrusted(X509Certificate[] certs, String authType) {
}
public void checkServerTrusted(X509Certificate[] certs, String authType) {
}
}
};
SSLContext sc = SSLContext.getInstance("SSL");
sc.init(null, trustAllCerts, new SecureRandom());
HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
这将创建一个 TrustManager 数组,其中的 X509TrustManager 将不验证任何证书,从而跳过证书链验证。请注意,这只是暂时的解决方法,不建议在生产环境中使用。