基于OkHttp访问网络时出现的网站证书认证问题
最近在跟后台交互的时候发现,后台基于安全考虑使用了https的通信。但是当安卓端使用OkHttp框架像平时一般请求访
问网络时则会出现如下错误:
public static OkHttpClient getUnsafeOkHttpClient() throws NoSuchAlgorithmException,KeyManagementException {try {TrustManager[] trustAllCerts = new TrustManager[] {new X509TrustManager() {@Overridepublic void checkClientTrusted(X509Certificate[] x509Certificates, String s)throws CertificateException {}@Overridepublic void checkServerTrusted(X509Certificate[] x509Certificates, String s)throws CertificateException {}@Overridepublic X509Certificate[] getAcceptedIssuers() {return new X509Certificate[0];}}} ;final SSLContext sslContext = SSLContext.getInstance("SSL");sslContext.init(null, trustAllCerts, new SecureRandom());final SSLSocketFactory sslSocketFactory = sslContext.getSocketFactory();OkHttpClient.Builder builder = new OkHttpClient.Builder();builder.sslSocketFactory(sslSocketFactory);builder.hostnameVerifier(new HostnameVerifier() {@Overridepublic boolean verify(String s, SSLSession sslSession) {return true;}});return builder.build();} catch (Exception e) {throw new RuntimeException(e);}}
这个方法返回了一个OkHttpClient对象,并且为其实现了对所有网站证书安全性的认证,以此对象去访问网络便可以解决上述错误。
基于OkHttp访问网络时出现的网站证书认证问题相关推荐
- 开题报告———基于Python的网络爬虫的电影网站设计与实现
摘要 当代万维⽹和互联⽹技术发展迅猛,有时候在浏览某些⽹页.相册或者某些图⽚⽹站时,发现很多图⽚都很喜欢想要下载到本地,但是数量较多时操作会过于繁琐.此爬⾍软件是为了使⽤户能够便捷的获取并下载某些⽹站 ...
- HTTP中常见的状态码代表的意思比如202、303、404、505、访问网络时有时经常见的状态,也是面试题中关于HTTP经常出现的
总结一下常见的HTTP状态码 2开头 (请求成功)表示成功处理了请求的状态代码. 200 (成功) 服务器已成功处理了请求. 通常,这表示服务器提供了请求的网页. 201 (已创建) 请 ...
- 一個简单的okhttp访问网络的例子
private void phoneLogin() {OkHttpClient okHttpClient = new OkHttpClient.Builder().connectTimeout(10, ...
- 关于AndroidStudio声明了网络访问权限却无法访问网络的问题
参考书目<第一行代码>第二版 AndroidStudio版本:3.5.2 SDK版本:Android9.0 在尝试访问网络时使用Okhttp(4.1.0)代码如下: private voi ...
- Java基于JSP的网络音乐KTV点歌电台网站
随着我国网民的增加,也促进了网络音乐电台的开发.随着网络技术的发展,人们在利用网络学习的同时,也在享受着网络带来的各种附带产品所产生的效应,如网络游戏,网络歌曲.网络音乐电台正是在这样的需求前提下应运 ...
- 基于JSP的网络音乐KTV点歌电台网站
随着我国网民的增加,也促进了网络音乐电台的开发.随着网络技术的发展,人们在利用网络学习的同时,也在享受着网络带来的各种附带产品所产生的效应,如网络游戏,网络歌曲.网络音乐电台正是在这样的需求前提下应运 ...
- 【自签名证书】如何解决访问蓝鲸平台时,提示网站不安全问题?
上一篇文章中我们介绍了HTTPS中用到的证书了,也知道对于我们开发者来说最常用到的其实是自签名证书,可自签名证书也不是能随便生成的. 如果还没读过的可以点击HTTPS那些事儿(一),网络中的身份证-- ...
- 加入域时提示“不能访问网络位置” 域
在加入域时又出现了"不能访问网络位置"的错误 . 在排除了网络连接和帐号密码的错误后,发现问题只可能是操作系统上的. 通过微软的问题数据库发现,解决方法如下: 当您尝试加入域时,出 ...
- RH358访问基于块的网络存储--自动化配置iSCSI initiator
RH358访问基于块的网络存储–自动化配置iSCSI initiator 本章节介绍如何使用Ansible连接iSCSI存储和管理. RH358专栏地址:https://blog.csdn.net/q ...
最新文章
- React 组件绑定点击事件,并且传参完整Demo
- leetcode 790. Domino and Tromino Tiling | 790. 多米诺和托米诺平铺(暴力递归->DP)
- Fiori里的exception继承
- java设计模式之责任链模式以及在java中作用
- js后退页面不重新加载_快应用:支持加载单独JS文件的规范思考
- Win7(x64)升级到Win10
- USB Storage启动EBox4300
- Flickr 网站架构分析(转)
- openldap中的Mirror mode模式中的主主同步
- python scripting for arcgis_Python Scripting for ArcGIS Pro
- 怎样黑进Microsoft:循序渐进指南 (转)
- 如何自定义el-dialog的具体宽度,而不影响页面内的其他el-dialog的宽度
- 软件测试培训班靠谱吗?一般多少钱?
- Cocos适配带虚拟导航栏手机(HUAWEI 荣耀6 Plus)
- AML8726调试记录
- 大数据开发——Hive实战案例
- 新一代音视频架构在元宇宙场景的实践
- 论文阅读-工作流搭建尝试try1:Readcube+Obsidian
- Steam热门游戏《帝国神话》分享:如何用UE4打造大型开放世界生存沙盒网游?
- 图灵社区 : 阅读 : (一)开始准备