今天来学习OkHttp的最后一个拦截器,如下:
看一下它的javadoc说明:
其作用有两个:发起网络请求和接收服务器响应,下面具体来看一下它的intercept():
下面具体来看一下:
接着就是读取响应信息了:
下面来总结一下Okhttp中一次网络请求的大致过程:
1、Call对象对请求的封装。
2、dispatcher对请求的分发。
3、getReponseWithInterceptors()方法。
而此时回顾一下拦截器:
- RetryAndFollowUpInterceptor:主要是负责重试和重定向请求。
- CacheInterceptor:处理缓存。
- BridgeInterceptor:负责请求和响应对象与实际请求和响应之间的转换,在转换过程中还可以处理一些cookie相关的内容。
- ConnectInterceptor:建立连接和流对象。
- CallServerInterceptor:完成最终的网络请求的。