OKHttp3通过拦截链的设计,让请求分成5个拦截器去处理,拦截器各司其职,扩展性非常高。拦截链是从自定义的拦截器开始,然后再到默认的5个拦截器。一般情况下我们想打印网络请求日志,可以自定义Log拦截器,如果要给所有请求添加Header,同样可以自定义Header拦截器。
5个默认拦截器分别是什么
1.失败重试、重定向拦截器。
2.桥拦截器:主要是添加和删除一些header
3.缓存拦截器:根据缓存策略,如果缓存可用,直接返回缓存数据。
4.连接池拦截器:连接池会缓存http链接,连接池的好处是复用连接,少了3次握手,所以请求会更快
5.真正访问网络的拦截器:内部使用okio去发请求
网友评论