Retrofit2简单的说就是一个网络请求的适配器,它将一个基本的Java接口通过动态代理的方式翻译成一个HTTP请求,并通过OkHttp去发送请求。此外它还具有强大的可扩展性,支持各种格式转换以及RxJava。本文基于Retrofit2解析。
Retrofit2基本使用
先定义一个PersonalProtocol的java接口
public interface PersonalProtocol {
/**
* 用户信息
* @param page
* @return
*/
@FormUrlEncoded
@POST("user/personal_list_info")
Call<Response<PersonalInfo>> getPersonalListInfo(@Field("cur_page") int page);
}
@FormUrlEncoded注解表示Form表单,另外还有@Multipart等注解,如果接口不需要传递参数,那么@FormUrlEncoded以及@Multipart需要去掉,具体原因后面章节会讲到。
@POST表示post请求,此外还可以使用@GET请求
现在看看Retrofit的使用
private void requestRetrofit(){
Retrofit retrofit = new Retrofit.Builder().baseUrl("www.xxxx.com/").build();
PersonalProtocol personalProtocol = retrofit.creat