rxjava+retrofit网络请求流程

1.构造retrofit实例,进行配置定制,比如callAdapterFactory、convertFactory,以及baseUrl;

2.Retrofit调用create创建一个动态代关键在于创建ServiceMethod;

3.ServiceMethod与接口方法传入的参数共同作用传入OkHttpCall,构成一个Call对象,经过CallAdapterFactory的适配,返回。因此接口方法可以理解为最后获得这个Call对象(真实来说应该是OkHttpCall)。

4.ServiceMethod收集接口方法的参数类型以及对应的注解,组成一个有关网络请求的参数类型集合。

5.RxJava在subscribe()时,最终Call对象调用enqueue,实际最终会调用到OkHttp的RealCall的enqueue方法,进入okhttp的异步请求流程。因此Retrofit的Call对象可以看成是OkHttp的Call的一个封装,但在网络请求获得响应后,OkHttpCall还会对返回的信息进行转置,根据ConvertFactory定义的转置模式进行转换。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值