Android-如何使用okhttp-retrofit从已保存的缓存中使特定的URL无效/删除。

时间:2019-01-15 11:44:09

标签: java android caching retrofit2 okhttp

我使用改造和okhttp在我的android项目中实现了缓存。在联机和脱机模式下均可正常工作。在服务器端,实现了电子标签和缓存控制机制来管理缓存过期和验证。默认情况下,从服务器端将响应的最小有效性设置为5分钟。

我的要求是,在某些特定的用户交互过程中,服务器响应(尤其是主页响应)将被更改。如果用户立即返回主页,则由于到期时间设置为5分钟,因此更改不会反映出来。

我需要删除主页响应的缓存副本,以便重新加载主页。我不想删除整个缓存,仅删除这个特定的缓存。我该如何实现?

1 个答案:

答案 0 :(得分:1)

@Headers("Cache-Control: no-cache") 在方法上应该起作用。

如果您想动态地进行操作,可以添加一个 @Header("Cache-Control")

字符串cacheControl参数,并传递null或“ no-cache”