Retrofit.Builder API 使用指南

 

首先了解下Retrofit.Builder得作用,Retrofit.Builder类使用Builder API来定义HTTP操作的URL端点,最后构建一个新Retrofit实例
 

请记住,baseUrl()在最终调用之前需要调用builder.build()。所有其他方法都是可选的。

1.使用Retrofit.Builder

使用Retrofit.Builder类创建Retrofit实例的一个非常基本的示例。

private static Retrofit.Builder builder
                = new Retrofit.Builder()
                    .baseUrl("https://api.domain.com/")
                    .addConverterFactory(GsonConverterFactory.create());
 
private static Retrofit retrofit = builder.build();

2.使用Retrofit.Builder设置OkHttpClient

使用Retrofit.Builder.client()方法设置OkHttpClientin 的实例Retrofit

private static OkHttpClient.Builder httpClient
                = new OkHttpClient.Builder();
 
private static Retrofit.Builder builder
            = new Retrofit.Builder()
                .baseUrl("https://api.domain.com/")
                .addConverterFactory(GsonConverterFactory.create())
                .client(httpClient.build());
 
private static Retrofit retrofit = builder.build();

3.添加日志记录

日志记录通过拦截器添加到http客户端。一个例子补充HttpLoggingInterceptorOkHttpClient

private static HttpLoggingInterceptor logging =
        new HttpLoggingInterceptor()
                .setLevel(HttpLoggingInterceptor.Level.BODY);
 
private static OkHttpClient.Builder httpClient
                    = new OkHttpClient.Builder();
 
{
    if (!httpClient.interceptors().contains(logging)) {
        httpClient.addInterceptor(logging);
    }
}
 
private static Retrofit.Builder builder
            = new Retrofit.Builder()
                .baseUrl("https://api.domain.com/")
                .addConverterFactory(GsonConverterFactory.create())
                .client(httpClient.build());
 
private static Retrofit retrofit = builder.build();

 

4。总结

上面列出的示例是我们需要Retrofit.Builder创建Retrofit实例时的一些常用情况。还有更多这样的案例,例如认证等。我们将在编辑教程中对它们进行研究。

 

原创文章,作者:jamestackk,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/243665.html

(0)
上一篇 2022年4月11日 21:47
下一篇 2022年4月11日 21:48

相关推荐

发表回复

登录后才能评论