Android为例:Retrofit初步认识--注解使用

Retrofit初步认识

 

Retrofit作为一个网络框架可以避免我们写多长的代码。

1. App应用程序通过 Retrofit 请求网络,实际上是使用 Retrofit 接口层封装请求参数、Header、Url 等信息,之后由 OkHttp 完成后续的请求操作。
2. 在服务端返回数据之后,OkHttp 将原始的结果交给 Retrofit,Retrofit根据用户的需求对结果进行解析。
retrofit可以帮使用者来简化工作。

以Android为例:

1.HTTP常用请求方法

分类 名称 备注
请求方法 GET 名称后都更、接受一个字符串path与baseURL组成一个完整的url
POST

把请求方法写入接口

如:

API接口

public interface API {

    @GET("/get/text")            //括号中填入需要拼接的字符串
    Call<JsonResult> getJson();
}

使用方式:再需要使用的地方加入

        API api = RetrofitManger.getRetrofit().create(API.class);        //创建Retrofit
        Call<JsonResult> task = api.getJson();                            //得到结果
        //结果
        task.enqueue(new Callback<JsonResult>() {
            @Override
            public void onResponse(Call<JsonResult> call, Response<JsonResult> response) {
                Log.d(TAG,"onResponse -->"+response.code());
                    //判断是否访问成功
                if (response.code()== HttpURLConnection.HTTP_OK){
                        //打印成功结果
                    Log.d("Debug", "onResponse -->" + response.body());       
                    
                }
            }

            @Override
            public void onFailure(Call<JsonResult> call, Throwable t) {
                 //打印失败原因
                Log.d(TAG,"onFailure-->"+t.toString());        
            }    
        });

2.参数类

分类 名称 备注
作用方法 Headers 用于添加请求头
作用与方法参数(形参) Header

用于添加不固定值的Header

Body 用于非表单请求体
Field

用于表单字段

(Field和FieldMap)与FormUrlEncoded注解配合

(Part和PartMap)与Multipart注解配合

FieldMap的接受类型为Map<String,String>,非String的会调用其同toString()方法

PartMap的默认接受类型为Map<String,String>,非RequestBody类型会通过Converter转换

FieldMap
Part
PartMap
Path

用于url

Query和QueryMAp与Field和FieldMap一样

不同:Query和QueryMap中的数据体现再URL上,而Field和FieldMap的数据是请求体

Query

QueryMap

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值