我正在努力解决服务的问题之一,需要10分钟才能反映最新的结果。实际上,在使用Get类型的API时,服务的结构如下所示:
www.abc.net/wp-json/wp/v2/posts?categories=192&page=1&per_page=2
当我试图从浏览器调用该服务时,它显示的是更新的信息,但当我尝试使用改进从我的android应用程序调用相同的服务时,它将更新的响应延迟了近10分钟。
Here是我在上一个问题中提到的关于相同的代码:
public class ApiClient {
private static Retrofit retrofit = null;
public static Retrofit getClient() {
HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor();
interceptor.setLevel(HttpLoggingInterceptor.Level.BODY);
OkHttpClient.Builder httpClient = new OkHttpClient.Builder();
httpClient.addInterceptor(new Interceptor() {
@Override
public Response intercept(Interceptor.Chain chain) throws IOException {
Request original = chain.request();
// Request customization: add request headers
Request.Builder requestBuilder = original.newBuilder()
.cacheControl(CacheControl.FORCE_NETWORK)
.addHeader("Cache-Control", "no-cache")
.addHeader("Cache-Control", "no-store");
Request request = requestBuilder.build();
return chain.proceed(request);
}
});
OkHttpClient client = httpClient.build();
retrofit = new Retrofit.Builder()
.baseUrl(ApiInterface.SERVICE_ENDPOINT)
.addConverterFactory(GsonConverterFactory.create())
.client(client)
.build();
return retrofit;
}
}我的API接口
public interface ApiInterface {
String SERVICE_ENDPOINT = "https://example.com/wp-json/wp/v2/";
@GET("posts")
Call<ArrayList<CategoryResponse>> fetchlatestposts(@Query("bloglist")
int bloglist);
}什么问题不能得到更新响应的实时,而作为10-15分钟的暂停,它将提供更新的结果。
发布于 2018-11-27 08:52:11
问题来自服务器端,WordPress已启用缓存,这是造成问题的原因。
https://stackoverflow.com/questions/53247684
复制相似问题