我在应用程序类中构建我的OkHttp,并持有对其的静态引用。这样,我在任何给定时间都有一个OkHttp实例。

okHttpClient = new OkHttpClient.Builder()
                .cache(new Cache(context.getCacheDir(), 50 * 1024 * 1024))
                .addInterceptor(new HttpInterceptor())
                .build();


现在,我正在提出两种请求,一种需要OAuth2,而另一种则需要API密钥和密钥(作为参数提供给请求URL)。我为需要OAuth2的请求using an interceptor

因此,问题在于后者的请求使用了拦截器进行身份验证,因此请求失败。我有什么办法可以告诉它“看,忽略此请求的拦截器”?还是我需要两个OkHttpClient实例?

最佳答案

您将需要两个实例,因为在创建附加到它的单实例机智拦截器后,它不会忽略拦截器。
黑客可能会在拦截器中识别网址,并忽略该请求的拦截器操作。

关于android - Okhttp具有不同的配置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45837908/

10-09 18:35