一.仅使用okhttp进行网络请求存在的四个问题。
1.复杂的接口配置需要手动进行(body、请求头、参数)
2.需要手动解析response body
3.无法自动完成线程切换
4.嵌套网络请求会陷入“回调陷阱”
二.okhttp和retrofit分别的职责是什么?
1.okhttp和retrofit都是square公司开发的,okhttp的设计初衷只是单一的进行网络请求,是基于http协议来的。
2.retrofit是RESTful风格的http网络框架,retrofit进行网络请求的本质还是通过okthhp完成的,retrofit只是对网络请求前后进行了封装。
请求前:
a.统一配置网络请求头(单例)
b.一致适配请求request(注解、反射、代理)
请求结果返回后:
a.线程切换
b.数据适配(response->bean)
三、retorfit封装的点:
1.使用build模式创建网络请求的基本配置
2.用注解来排列组合成网络请求
3.统一的gson解析