
OkHttp
文章平均质量分 70
Android_阿拉拉
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
深入理解OkHttp3:(一)综述
OkHttp是用于Android和Java应用程序的HTTP & HTTP2客户端框架。 HTTP是现代应用程序网络通讯的协议。这是我们交换数据的常用方式。合理的使用HTTP将使您的内容加载速度更快,并节省带宽。 OkHttp通过以下方式来做到高效: 1,支持HTTP/2,允许对同一主机的所有请求共享一个套接字。 2,采用连接池,减少了请求延迟(HTTP/2不可用)。 3,透明GZI...翻译 2018-09-25 11:32:54 · 337 阅读 · 0 评论 -
深入理解OkHttp3:(二)请求(Calls)详解
HTTP客户端的任务是接受您的请求并访问服务器,处理其响应。这在理论上很简单,但在实践中却很棘手。 Request: 每个HTTP请求都包含一个URL、一个方法(比如GET或POST)和一个Header列表。请求还可以包含body:特定内容类型的数据流。 Response: Response以代码(像200代表成功,404代表未找到)、H...翻译 2018-09-25 16:02:16 · 729 阅读 · 0 评论 -
深入理解OkHttp3:(三)连接(Connections)
尽管我们只提供给OkHttp一个URL,但OkHttp计划使用三种类型来连接到服务器:URL、地址(Address)、和路由(Route)。 URLs URL(比如https://github.com/square/okhttp)是HTTP和互联网的基础。除了是web上所有事物的通用的、分散的命名方案(DNS)之外,它们还指定了如何访问web资源。 URL是抽象的。 它们指定调用(Call...翻译 2018-09-25 16:34:03 · 1482 阅读 · 0 评论 -
深入理解OkHttp3:(四)常用事例Demo
这里汇总编写了一些演示如何使用OkHttp解决常见问题的方法。通读它们,了解它们是如何协同工作的。可以在需要的时候,随意剪切粘贴这些示例; 1.同步GET(Synchronous GET) 下载一个文件,打印它的标题,并打印它的响应主体作为字符串。 响应体(Body)上的string()方法对于小文档来说既方便又高效。但是,如果响应主体很大(大于1 MiB),请避免string(),因为它将...翻译 2018-09-25 18:34:37 · 1105 阅读 · 0 评论 -
深入理解OkHttp3:(五)拦截器(Interceptors)
拦截器是一种强大的机制,可以监视、重写和重试调用(Call)。下面是一个简单的拦截器,它记录发出的请求和传入的响应。 class LoggingInterceptor implements Interceptor { @Override public Response intercept(Interceptor.Chain chain) throws IOException { R...翻译 2018-09-26 14:25:42 · 900 阅读 · 0 评论 -
深入理解OkHttp3:(六)Https
OkHttp试图平衡两个相互竞争的关注点: 连接到尽可能多的主机。这包括运行最新版本boringssl的高级主机,以及运行旧版本OpenSSL的少数过时的主机。 连接的安全性。这包括使用证书验证远程web服务器,以及使用强大的密码体系保证交换数据的隐私性。 在与HTTPS服务器的连接时,OkHttp需要知道要提供哪些TLS版本和密码套件。客户端想要最大限度地连接服务器,不得不包括过时的TLS版...翻译 2018-09-26 15:35:02 · 6710 阅读 · 0 评论 -
深入理解OkHttp3:(七)事件(Events)
事件允许您捕获应用程序的HTTP请求的指标。并可以使用事件来监控: 应用程序发出的HTTP请求的大小和频率。如果你的应用做了很多请求,或者你的Http请求很大,你应该知晓! 这些网络请求在底层网络上的性能。如果网络的性能不够好,您需要改进网络或者减少使用网络。 EventListener 您感兴趣的事件的子类EventListener和覆盖方法。在没有重定向或重试的成功HTTP请求中,事件序...翻译 2018-09-26 16:20:42 · 4043 阅读 · 0 评论 -
读OkHttp3源码(一):OkHttpClient
1,简介:OkHttpClient是Call的的工厂,可用于发送HTTP请求并读取其响应。 大多数应用程序可以对所有HTTP请求使用一个OkHttpClient,这得益于共享的响应缓存、线程池、连接重用等等。 要使用默认设置创建OkHttpClient,请使用默认构造函数。 或者使用OkHttpClient.Builder创建自定义配置的实例。 要在发出请求之前调整现有客户端,请使用newB...原创 2018-09-29 15:21:10 · 2031 阅读 · 0 评论 -
读OkHttp3源码(二):CertificatePinner(锁定证书)
okhttp3 public final class CertificatePinner extends Object 类介绍: 该类用于约束哪些证书是可信的。 锁定证书可以防止对证书颁发机构相关的攻击。 它还阻止通过用户已知或未知的中间证书颁发机构建立的连接。 这个类目前锁定了一个证书的主题公钥信息,如Adam Langley的博客所述。公钥不是HTTP公钥锁定(HPKP)中的base64 ...原创 2018-10-09 18:15:31 · 8328 阅读 · 0 评论