Retrofit2缓存混乱

时间:2018-10-10 08:57:01

标签: android retrofit2 okhttp3

我可以根据示例来缓存响应,但是即使阅读了很多有关该主题的文章,我也无法理解缓存机制。在Retrofit2中,我们使用拦截器和重写请求标头。示例代码,

@Throws(IOException::class)
override fun intercept(chain: Interceptor.Chain): Response {
    var request = chain.request()
    if (!isNetworkAvailable()) {
        request = request.newBuilder().header("Cache-Control",
                "public, only-if-cached, max-stale=" + 60 * 60 * 24).build()
        return chain.proceed(request)
    }
    return chain.proceed(request)
}

但是我们操纵请求头,难道不应该根据响应头来缓存工作吗?

关于缓存机制,包括有用的标头,有没有好的文章?

谢谢。

0 个答案:

没有答案