拆*系列:拆 OkHttp--理解笔记

一.参考

拆*系列:拆 OkHttp
https://blog.piasy.com/2016/07/11/Understand-OkHttp/index.html

二.理解

1.okhttp通过责任链模式构造了一系列interceptor; 将Request请求转换为
Response返回; 其中每层的一个interceptor先尝试自己处理; 若处理未完成则交给下一个interceptor去处理.(会将自己处理的成果也传递到下一个interceptor).

  1. 整体上okhttp从上到下有:
    (a)interceptors为应用拦截器,是用户可以选择自定义添加的拦截器.常可以设置用来统计客户端网络请求的发起情况.
    (1)RetryAndFollowUpInterceptor负责重试和请求重定向;
    (2)BridgeInterceptor负责对请求和响应进行改造转换
    (3)CacheInterceptor负责缓存(用DiskLruCache对结果进行缓存)
    (4)ConnectInterceptor负责和服务器建立连接(有连接池便于连接复用和加速连接建立)
    (b) networkInterceptor是网络拦截器,使用后可以选择自定义的拦截器.常可以设置用来统计网络链路上的数据传输
    (5) CallServerInterceptor负责请求服务器

另可参考:
1.【知识点】OkHttp 原理 8 连问
https://juejin.cn/post/7020027832977850381
2. 面试官:听说你熟悉OkHttp原理?
https://juejin.cn/post/6844904087788453896#heading-5

上一篇:【NOI2005】聪聪和可可 概率与期望 记忆化搜索


下一篇:[BZOJ 1070] [SCOI2007] 修车 【费用流】