Retrofit

Retrofit是okhttp的进化版,是okhttp网络框架的升级,是目前最具潮流的网络请求框架,运用注解和动态代理模式,极大的简化了网络请求的繁琐步骤

Retrofit与OKhttp的不同:

  • 1.设置请求方式是注解的形式
  • 2.接口拼接字符串更灵活 (BaseUEL以"/“结尾, 注解的URL一定不要以”/"开头)
  • 3.异步响应回调方法在主线程

Retrofit GET请求

public class Constant {
    //baseurl
    public final static String URL_BASE = "http://m2.qiushibaike.com/";

//通过动态代理模式进行网址的拼接

public interface MyServerInterface {
///////////////////////////////////////////////////GET网络请求方式//////////////////////////////////////
    /**
     * A.
     * GET请求,指定Path参数和Query参数
     * 其中注解中的变量用{ 变量名自定义 } 在方法参数中
     * 格式:@Path("上面定义的变量名") 类型 定义的变量名  作用:替换url地址中"{"和"}"所包括的部分
     * 格式:@Query("参数名") 类型 定义的参数名 作用:会拼接在URL的最后部分,类似追加了"page = 1"的字符串,形成提交给服务器端的请求参数
     */
    @GET("article/list/{type}?")
    Call<QiushiModel> getInfoList(@Path("type") String type, @Query("page") int page);

//新建retrofit
Retrofit build = new Retrofit.Builder()
        .baseUrl(Urls.path)
        .build();

Methods methods = build.create(Methods.class);

//调用接口中的抽象方法
Call<ResponseBody> instance = methods.getInstance();
instance.enqueue(new Callback<ResponseBody>() {
    @Override
    public void onResponse(Response<ResponseBody> response, Retrofit retrofit) {
        try {
            //回调在主线程
            String string = response.body().string();
            tv.setText(string);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    @Override
    public void onFailure(Throwable t) {

    }
});

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值