Android 如何检查数据是否已在缓存中

Android 如何检查数据是否已在缓存中,android,caching,okhttp,Android,Caching,Okhttp,我按照教程使用ETags实现了缓存,但是带查询的请求如何首先检查缓存?例如,假设您有一个获取Todo注释列表的端点GET/Todos,然后您有一个获取特定id的Todo的GET/Todos/{id}。如果我先获取所有Todo,然后尝试获取特定id的Todo,是否有任何方法可以检查该项是否已经在缓存中,因为在获取所有项时,它以前会被缓存 对请求使用CacheControl.FORCE\u缓存。如果收到状态代码为503的响应,则该响应不在缓存中。这不起作用。在这种情况下,GET/Todos/{id}

我按照教程使用ETags实现了缓存,但是带查询的请求如何首先检查缓存?例如,假设您有一个获取Todo注释列表的端点GET/Todos,然后您有一个获取特定id的Todo的GET/Todos/{id}。如果我先获取所有Todo,然后尝试获取特定id的Todo,是否有任何方法可以检查该项是否已经在缓存中,因为在获取所有项时,它以前会被缓存

对请求使用CacheControl.FORCE\u缓存。如果收到状态代码为503的响应,则该响应不在缓存中。

这不起作用。在这种情况下,GET/Todos/{id}将返回503,因为该特定请求尚未发出,因此它未被缓存,即使通过不同的请求GET/Todos缓存了相同的数据