前言
在这个技术日新月累的今天,各种新的轮子层出不穷。网络这块,从HttpClient
到android-async-http
,再到Volley
。当下比较火的网络框架Retrofit
也是受到了很多开发者的热爱。虽然项目中并没有使用到Retrofit
,但抱着学习的态度,我还是打算接触一下,算是有个了解。说不定后面的开发中会用到呢?
Retrofit概述
Retrofit
是一个 RESTful 的 HTTP 网络请求框架的封装。注意这里并没有说它是网络请求框架,主要原因在于网络请求的工作并不是Retrofit
来完成的。Retrofit 2.0
开始内置OkHttp
,前者专注于接口的封装,后者专注于网络请求的高效,二者分工协作。
我们的应用程序通过Retrofit
请求网络,实际上是使用Retrofit
接口层封装请求参数、Header、Url等信息,之后由OkHttp
完成后续的请求操作,在服务端返回数据之后,OkHttp
将原始的结果交给Retrofit
,后者根据用户的需求对结果进行解析的过程。所谓Retrofit
,其实就是Retrofitting OkHttp
了。