Retrofit

2020-04-22  本文已影响0人  吃心人丶

二、Retrofit

retrofit使用步骤

①创建接口服务类:baseURL和方法,添加依赖

implementation'com.squareup.retrofit2:retrofit:2.5.0'

②创建retrofit对象

Retrofit retrofit =new Retrofit.Builder()

.baseUrl(ApiServer.base_url)

.build();

③通过retrofit对象获取接口服务对象

ApiServer apiServer = retrofit.create(ApiServer.class);

④接口服务对象调用自己的方法

Call call = apiServer.get2(参数,参数,参数);

⑤通过call执行请求

call.enqueue(new Callback() {

@Override

    public void onResponse(Call call, Response response) {

try {

String string = response.body().string();

}catch (IOException e) {

e.printStackTrace();

}

}

@Override

    public void onFailure(Call call, Throwable t) {

}

});

注解代码  请求格式

请求方式:

@GET        GET请求

@POST    POST请求

@DELETE    DELETE请求

@HEAD        HEAD请求

@OPTIONS      OPTIONS请求

@PATCH        PATCH请求

请求头:

@Headers("K:V")          添加请求头,作用于方法

@Header("K")                添加请求头,参数添加头

@FormUrlEncoded        用表单数据提交,搭配参数使用

@Stream                      下载

@Multipart                    用文件上传提交  multipart/form-data

请求参数:

@Query                  替代参数值,通常是结合get请求的

@QueryMap            替代参数值,通常是结合get请求的

@Field                    替换参数值,是结合post请求的

@FieldMap              替换参数值,是结合post请求的

请求路径:

@Path            替换路径

@Url              路径拼接

请求体:

@Body(RequestBody)          设置请求体,是结合post请求的

文件处理:

@PartMultipart.Part

@Part("key")RequestBodyrequestBody(单参)

@PartMapMap<String,RequestBody>requestBodyMap(多参)

@BodyRequestBodyrequestBody(自定义参数)

上一篇下一篇

猜你喜欢

热点阅读