Retrofit的Call方式使用学习

Retrofit是一个resful形式的网络请求框架,它是基于okhttp网络请求SDK的二次封装。参考文档:https://www.jianshu.com/p/308f3c54abdd

使用框架需要引入的包库

compile 'com.squareup.retrofit2:adapter-rxjava:2.3.0'

compile 'com.squareup.retrofit2:retrofit:2.3.0' compile '

com.squareup.retrofit2:converter-gson:2.3.0'

第一步:我们定义一个接受返回信息的Bean:InfoBean包含三个字段 code、reason、result。视返回的json数据的字典而定,保持一致方可

第二步:使用retrofit需要定义请求接口

public interface BlogService {

@GET("blog/{id}")

Call getBlog(@Path("id") int id);

}

其中的Call留意一下

第三步:使用代理模式申明对象才能调用接口方法

BlogService service = retrofit.create(BlogService.class);

第四步:异步请求

Call call = service.getBlog(2);

// 用法和OkHttp的call如出一辙,

// 不同的是如果是Android系统回调方法执行在主线程

call.enqueue(new Callback() {

@Override

public void onResponse(Call call, Response response) {

    try { 

        System.out.println(response.body().string());

    } catch (IOException e) { e.printStackTrace(); } }

@Override public void onFailure(Call call, Throwable t) 

    {

    t.printStackTrace();

    } 

});

学会初步使用可以了解更详细的注解及配合rxjava使用

你可能感兴趣的:(Retrofit的Call方式使用学习)