Retrofit,用过就回不来了

 

文章目录

 


前言

Retrofit是在OKHttp的基础上封装的,和OKHttp是同一家公司开发的,和OKHttp相比代码上会更加简洁,使用更加方便。


一、Retrofit是什么?

Retrofit是第三方网络框架,可以用于Java,安卓平台,本文主要讲在安卓平台的使用。

二、使用步骤

1.引入库

在安卓Grable(:app)中加入依赖:

implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:‎2.9.0'//配套使用的,起转化JSON字符串的作用

2.创建接口

代码如下:

public interface Api {
    @FormUrlEncoded //表单提交注解
    @POST("login.php") //访问方式
    Call<BaseApiResponse<List<User>>> login(@Field("usuario") String email, @Field("password") String password);//返回数据类型及提交参数。

    @GET("getUser.php?userID=id") //访问方式
    Call<BaseApiResponse<User>> getUser();//返回数据类型及提交参数。
}

3.创建Retrofit对象

这里我们创建一个静态方法,以供外部调用,获取Retrofit对象:

public class RetrofitApi {

    private static final String Domain = "url";

    public static Retrofit getRetrofit(){
        //创建Retrofit对象
        Retrofit retrofit = new Retrofit.Builder()
                .addConverterFactory(GsonConverterFactory.create())//将json转化为对象
                .baseUrl(Domain)
                .build();
        return retrofit;
    }


}

4.获取响应数据

Api api = RetrofitApi.getRetrofit().create(Api.class);//动态创建接口对象
        Call<BaseApiResponse<List<User>>> call = api.login(email,hashedPass);
        //Call<BaseApiResponse<User>> call = api.getUser();//get请求
        call.enqueue(new Callback<BaseApiResponse<List<User>>>() {
            @Override
            public void onResponse(Call<BaseApiResponse<List<User>>> call, Response<BaseApiResponse<List<User>>> response) {
                Log.i("线程环境:", Thread.currentThread().getName());//线程环境是主线程
                Log.i("响应数据:", response.body().toString);

            }

            @Override
            public void onFailure(Call<BaseApiResponse<List<User>>> call, Throwable t) {
            
               Log.i("获取失败:", t.toString);
            }
        });

总结

本文主要讲述了Retrofit的使用,Retrofit使用了很多注解,让我们使用起来很简单,本文只提了@POST,和@GET,还有很多注解,有机会在进行介绍。那这就是本文的全部内容了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值