![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
框架
文章平均质量分 67
老头儿look_Future
当前知识的展现,是此前知识积累的结果。
展开
-
OkHttp3源码(九) ------ 拦截器
拦截器Interceptor的设计思想——创建拦截器链(后面简称链),执行指定拦截器的方法,根据旧链创建新链,再次执行上述过程,直至全部拦截器执行完毕。 拦截器方法(intercept(…))的主要实现: (1)、对发起的request进行处理。 (2)、调用下一个拦截器,获取response。 (3)、对上一个拦截器返回的response进行处理,最后返回给上个...原创 2018-03-28 18:57:11 · 468 阅读 · 0 评论 -
OkHttp3源码(八) ------ RealCall
RealCall类 —–前面我们讲的是HTTP相关的概念在OKhttp3中是如何通过类实现的 。 Okhttp的请求过程是先组装请求报文,然后将请求报文封装成一个任务,最后交由“网络”去执行这个任务。 而RealCall就是这个任务。我们看一下源码。1、RealCall属性//重连接拦接器 ------ 拦截器我们会在后面的章节讲解final RetryAndFollowUp...原创 2018-03-28 18:38:26 · 480 阅读 · 0 评论 -
OkHttp3源码(七) ------ ResponseBody
ResponseBody抽象类 ——主要是对响应正文的概念的实现。 因为ResponseBody抽象类的子类RealResponseBody实现的很简单,就是持有响应头和读取流。其中大部分功能还是在ResponseBody抽象类中的,所以这里只分析ResponseBody。我们看一下源码。一、ResponseBody类声明public abstract class MyRespo...原创 2018-03-28 18:04:57 · 2766 阅读 · 0 评论 -
OkHttp3源码(六) ------ Response
Response类 —— 主要是对响应报文的概念的实现。 响应报文的结构图 可以看到响应报文的结构和请求报文的结构差不多。只是具体细节有些不同。我们根据响应报文的结构来了解Response源码。1、Respons的属性//得到该响应报文的请求报文final Request request;//返回响应报文用的协议,这个是个枚举类。------对应上图协议版本final P...原创 2018-03-28 17:34:49 · 2302 阅读 · 0 评论 -
Okhttp3源码(五) ------ CacheControl
在学习本篇博客的朋友,如果你对Http首部字段的Cache-Control 字段值不太了解的话,这里强烈建议参见 Http首部的字段及相应的取值内容了解Cache-Control字段值的朋友,都知道它的一个特点,就是——多! 为了简化对缓存的相关操作,OkHttp3对它们做了封装,几乎每一个字段值对应一个属性。我们看一下它的源码。1、CacheControl的属性...原创 2018-03-28 17:12:10 · 472 阅读 · 0 评论 -
OkHttp3源码(四) ------ RequestBody
接下来是对RequestBody抽象类的分析,因为内部实现很简单,所以这里贴出加注释的源码,供大家阅读。对于RequestBody抽象类,我们只需要细看最后两个有具体实现的方法。RequestBody类主要做了获得请求体的数据类型、获得请求体的数据长度、将请求体写入到流中这三件事。我们看一下它的源码。1、两个抽象方法//获取请求体的类型public abstract MediaT...原创 2018-03-28 16:50:16 · 4465 阅读 · 0 评论 -
OkHttp3源码(三)------Header
由于Header类是之前已经分析好的,所以这里直接拿过来就可以了。 之所以之前没有发布这篇博客是因为在学习Header类之前,首先要明白Http首部信息的相关字段及内容,关于这个如果还不太了解请参看 Http首部的字段及相应的取值内容Header类属性: //通过字符串数据的方式维护数据,用于实现获取数据的功能。 private final String[] namesAn...原创 2018-03-27 15:42:27 · 1384 阅读 · 0 评论 -
OkHttp3源码(二)------Request
上篇OkHttp3源码(一)——OkHttpClient很荣幸得到评论加关注。Request —— 是对HTTP请求报文概念的具体实现 请求报文的结构图 根据结构图去阅读源码能很好的理解某些属性的真实意义。我们看一下源码。public final class Request { final HttpUrl url; final String method; ...原创 2018-03-26 15:29:06 · 270 阅读 · 0 评论 -
OkHttp3源码(一) ------ OkHttpClient
关于OkHttp3之前用的时候没有考虑过它的内部实现过程,今天在这里整理记录一下。 接下来我会将OkHttpClient类中常用的方法,内部类、字段加上自己理解的注释,通过看注释了解OkHttpClient的主要用途。public class OkHttpClient implements Cloneable, Call.Factory, WebSocket.Factory { ...原创 2018-03-24 12:21:52 · 629 阅读 · 1 评论 -
(Retrofit系列一)玩转Retrofit的执行器 ------ OkHttpCall
清新一刻 生活有时就是这么残酷,可能没人关心你的努力,大家只看最后的结果。成年人的世界没有“容易”二字!所谓无心插柳,都是努力后的水到渠成。背景相信现在Android在做网络方面的内容时,首先想到的就是Retrofit。为什么呢? 我这里总结了两条原因: 1、OkHttp用其强大的功力成功打入Android框架内部,(对于OkHttp还不太熟悉的朋友,建议先去了解一下,如...原创 2018-08-05 15:14:39 · 369 阅读 · 0 评论