OkHttp 核心拦截器讲解

RetryAndFollowUpInterceptor 重定向拦截器

Okhttp内置的第一个拦截器,通过while(true)的死循环来进行对异常结果或响应结果判断是否要进行重新请求.负责失败重连和重定向的拦截器。

BridgeInterceptor  桥拦截器

它可以对网络文件的类型,网页的编码和返回的数据进行解压处理.是为用户构建的一个Request请求转化为能够进行网络访问的请求,同时将网络请求回来的响应Response转化为用户可用的Response。

CacheIntercepor 缓存拦截器

可以根据OkhttpClient对象的配置以及缓存策略对请求值进行缓存。

ConnectIntercepor  连接拦截器

在Okhttp底层是通过socket的方式于服务端进行连接的,并且在连接建立之后会通过OKIO获取通向server端的输入流Source和输出流Sink。

CallServerInterceptor 请求拦截器

CallServerInterceptor 在 ConnectInterceptor 拦截器的功能就是负责与服务器建立 Socket 连接,并且创建了一个 HttpStream 它包括通向服务器的输入流和输出流。而接下来的 CallServerInterceptor 拦截器的功能使用 HttpStream 与服务器进行数据的读写操作的。

拦截器用了责任链设计模式,它将请求一层一层向下传,直到有一层能够得到Response就停止向下传递。

然后将response向上面的拦截器传递,然后各个拦截器会对respone进行一些处理,最后会传到RealCall类中通过execute来得到response

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值