gpt4 book ai didi

android - retrofit2中不同api添加通用参数

转载 作者:行者123 更新时间:2023-11-29 01:19:41 25 4
gpt4 key购买 nike

我现在有 10 多个不同的 api,我想为每个 api 添加一些通用的请求参数,理想的方法是每个 api 都有拦截器,这在改造中是不可能的。有没有好的方法来做到这一点?

最佳答案

您仍然应该能够通过改造来做到这一点——为 API 调用创建一个具有静态创建的类,并根据传递的参数调用您需要的扩展。

public interface RetrofitAPICalls{
}

public class RetrofitAPIService{
private RetroFitAPIService(){}
public static RetrofitAPICalls createApiService(PARAMETERS NEEDED FOR YOUR INTERCEPTOR){
Retrofit.Builder builder = new Retrofit.Builder()
.addConverterFactory(GsonConverterFactory.create())
.addCallAdapterFactory(RxJavaCallAdapterFactory.create())
.baseUrl(baseUrl);

OkHttpClient client = new OkHttpClient.Builder().addInterceptor(getInterceptor()).addInterceptor(loggingInterceptor)
.build();
builder.client(client);
}
}
public void getInterceptor()
{
return new Interceptor() {
@Override
public Response intercept(Chain chain) throws IOException {
Request request = chain.request();
Request newReq = request.newBuilder()

//SWITCH BASED ON REQUEST?

return chain.proceed(newReq);
}
}

关于android - retrofit2中不同api添加通用参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37665160/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com