这可能是一个奇怪的问题,但我有理由相信我的改造客户正在缓存我的电话。为什么我这么认为?我使用 CoinGecko 作为我的数据提供者。每个 IP 地址每分钟限制 10-30 个网络调用。一旦失败,我的 Android 应用程序会在所有呼叫中失败很多分钟,但我的 iOS 应用程序会在一分钟后成功。 我下面的代码有问题吗?我真的很感谢所有的答案
object RetrofitBuilder {
private const val BASE_URL = "http://localhost/"
private fun getRetrofit(): Retrofit {
val httpClient = OkHttpClient
.Builder()
.connectTimeout(15, TimeUnit.SECONDS)
.readTimeout(15, TimeUnit.SECONDS)
.cache(null)
.addInterceptor { chain ->
val response = chain.proceed(chain.request())
response
.newBuilder()
.header("cache-control", "no-cache")
.build()
}
.build()
return Retrofit.Builder()
.baseUrl(BASE_URL)
.client(httpClient)
.addCallAdapterFactory(ResultCallAdapterFactory())
.addConverterFactory(ScalarsConverterFactory.create())
.addConverterFactory(GsonConverterFactory.create())
.build()
}
val apiService: ApiService = getRetrofit().create(ApiService::class.java)
}