zoukankan      html  css  js  c++  java
  • Retrofit的使用

      Retrofit对象创建采用的是建造者模式,baseUrl 必须得指定,url有两种情况(schme://host/path/path/path/),只写到主机名(host),或者写path后跟/结束。其他的形式的是非法的。

    1 Retrofit retrofit = new Retrofit.Builder()
    2     .baseUrl(API_URL)
    3     .addConverterFactory(GsonConverterFactory.create())
    4     .build();

      retrofit是通过对方法的反射来执行网络请求,需要方法的注解和参数列表,不需要方法体,所以调用create()方法时要的是一个接口,在这个方法中创建了Github接口的代理,其中接口中的方法代码一个完整的请求,用方法注解来表示网络请求的方法和url,其中url中的path是可以即时变化的,变化的值放在方法的参数列表中,参数列表的注解来表示该参数对应url中的哪一部分。

    public interface GitHub {
      @GET("/repos/{owner}/{repo}/contributors")
      Call<List<Contributor>> contributors(@Path("owner") String owner, @Path("repo") String repo);
    }
    GitHub github = retrofit.create(GitHub.class);

    Retrofit用给方法加的注解来定义网络请求的方式,包含以下注解:

    @DELETE

    @GET:对应GET请求方式,注解的值是要请求的路径

    @POST:POST请求方式,用于提交数据到服务器

    @PUT

    @HEAD

    @OPTIONS

    @PATCH

    @HTTP:自定义请求方式

    @Headers

    @Multipart

    @FormUrlEncoded

  • 相关阅读:
    Flutter图片选择 image_picker(官方)插件使用详解
    androidstudo如何跨越这个厚厚的墙,亲测有效 Could not resolve com.android.tools.build:gradle:
    qwq。。胡诌qwq
    关于很狗的军训qwq
    Leetcode每日一题 503.下一个更大元素II
    C++ 关于volatlie
    C++虚成员函数与动态联编
    graphics pipeline
    pointer or function
    线段树
  • 原文地址:https://www.cnblogs.com/minguo/p/6701095.html
Copyright © 2011-2022 走看看