okHttp 默认支持https,以及可以识别常见网站申请的https的ca证书。但是遇到服务器自定义的证书,比如12306自定义的就不支持了。
那么就需要自己将证书添加到OKhttp的管理中。
参考如下文章:
Android Https相关完全解析 当OkHttp遇到Https
这篇文章讲解了如何将自定义的ca证书添加到okhttp的认证中去。
可以使用将ca文件放在asset目录,以及将ca文件的字符串提取出来写成代码常量设置两种方式。
另外okhttp3有一些API更新了,参考github上的wiki做一些改动。
okhttp3自定义证书加载代码示例:
https://github.com/square/okhttp/blob/master/samples/guide/src/main/java/okhttp3/recipes/CustomTrust.java
网友评论