Glide显示不出图片,监听报javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException:

Glide框架是当前比较流行的图片加载框架,使用起来也很简单,肯定有人在使用的时候加载不出图片的,情况有多种,下面讲一下加载不出来捕获到的Exception:javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: 。出现这种情况基本上都是加载https出现的。

很明显就是https证书的问题,具体异常信息为:javax.net.ssl.SSLHandshakeException:java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.

捕获该异常的方法:

Glide显示不出图片,监听报javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException:_第1张图片

这里简单写一下http跟https的区别,其实https=http+ssl,就是http加上安全证书之后就是https,其实就是在http的应用层在加上安全套接字的子层就形成了https,有什么用?其实就是保证数据的安全,可以简单这样理解,http传输的是明文,而https传输的是加密后的密文。

产生原因:

由于项目的https.bks证书不是正规的CA签发的证书,而是二级代理商等签发的证书,验证不通过造成的!!!

解决方案:

一.后台使用正规的,符合市面基本规则的证书,这是最根本的解决方法。

二.在客户端忽略https验证检验。这种做法虽然能加载出来,但是有点不合情理,既然是https安全检验,却还要忽略,还不如干脆就是http,不用https。

具体做法:需要在获取sslParams时,修改并自定义TrustManager为trustAllCerts,需要在继承Application中去实现。

代码如下:

Glide显示不出图片,监听报javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException:_第2张图片

你可能感兴趣的:(Glide显示不出图片,监听报javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException:)