异常 解决 : sun.security.validator.ValidatorException: falló la construcción de la ruta PKIX: sun.security.provider.certpath.SunCertPathBuilderException: no se pudo encontrar la ruta de certificación válida para el objetivo solicitado

Encontré esta excepción cuando escribí una demostración de rastreador con JSOUP hace unos días

Baidu tuvo algunas excepciones cuando el sitio de destino tenía HTTPS habilitado y carecía de un certificado de seguridad. Hay dos soluciones posibles:

  1. Importe manualmente el certificado de seguridad (no se utiliza para problemas);

  2. Ignorar la verificación del certificado.

    Relativamente simple, llame a este método antes de iniciar la solicitud, el problema está resuelto.

`` `Java

 

// No 
confunda el paquete import javax.net.ssl. * ; 
Import java.security.SecureRandom; 
import java.security.cert.CertificateException; 
import java.security.cert.X509Certificate;  / **  * Confíe en cualquier sitio para lograrlo Acceso normal a páginas https  * / 
 public static void trustEveryone () { 
 try {HttpsURLConnection.setDefaultHostnameVerifier (new HostnameVerifier () {public boolean verificar (String hostname, SSLSession session) {return true ;}}); SSLContext context = SSLContext.getInstance ( "TLS" ); context.init (nulo, nuevo X509TrustManager [] {new X509TrustManager () {public void checkClientTrusted (X509Certificate [] chain, String authType) lanzaCertificateException {} public void checkServerTrusted (cadena X509Certificate [], String authType) arroja CertificateException {} public X509Certificate [] getAcceptedIssuers () {return new X509Certificate [0 ]; }}}, nuevo SecureRandom ()); HttpsURLConnection.setDefaultSSLSocketFactory (context.getSocketFactory ()); } catch (Excepción e) {e.printStackTrace (); }} 
`` `

 

Supongo que te gusta

Origin www.cnblogs.com/asas/p/12685836.html
Recomendado
Clasificación