前言
本文只是 Retrofit Android 端的常规使用
正文
一、Retrofit 简介
Retrofit 是 Square 公司开源的一个网络请求框架,适用于 Android 和 java ,采用注解的方式,简化网络请求,提高网络请求速度,底层为 Square 公司的 okhttp !
二、主要的请求方式和注解简介
1. 主要的请求方式
格式 | 含义 |
---|---|
@GET | 表示这是一个GET请求 |
@POST | 表示这个一个POST请求 |
@PUT | 表示这是一个PUT请求 |
@DELETE | 表示这是一个DELETE请求 |
@HEAD | 表示这是一个HEAD请求 |
@OPTIONS | 表示这是一个OPTION请求 |
@PATCH | 表示这是一个PAT请求 |
2. 主要的注解
格式 | 含义 |
---|---|
@Headers | 添加请求头 |
@Path | 替换路径 |
@Query | 替代参数值,通常是结合get请求的 |
@FormUrlEncoded | 用表单数据提交 |
@Field | 替换参数值,是结合post请求的 |
三、简单使用例子
1. 添加依赖和权限
|
|
|
|
2. 创建网络请求接口
|
|
说明:
- 这是一个接口,接口名称随意命名
- @GET 表示是 get 请求 , 而 @GET 后边括号里的是相对地址,例如:www.baidu.com/aaaa/bbbb/ccccc ,其中 aaaa/bbbb/ccccc 就是相对地址。
- Call 是固定写法,后边<>中的 RetrofitTextBean 是根据请求结果的 json 字符串生成的 javaBean
- getRequest 方法名一般采用 getXXX的形式
- @Query 是配合 GET 请求用的,后边的括号内为拼接在 url 后的请求参数 key ,而 int 类型的 markret_id 为 value
3. 开始异步请求 ( GET 请求)
|
|
四、GET 请求扩展(以第三条的例子为基础)
1. 另一种接口定义方式
|
|
说明: 这种定义方式,是在获取请求方法的时候才传入相对地址,更加灵活一点,如下所示:
|
|
2. 还有一种接口定义方式
|
|
说明: 这种适合参数比较多,且参数的数据类型一致时,使用
未完待续~