android - 如何检查数据是否已经在缓存中 OkHttp

标签 android caching okhttp

我关注了this使用 ETag 实现缓存的教程,但是带有查询的请求如何首先检查缓存?例如,假设您有一个获取待办事项列表的端点 GET/Todos,然后您有一个获取待办事项的 GET/Todos/{id}特定的ID。如果我先获取所有待办事项,然后尝试为特定 ID 获取一个,是否有任何方法可以检查该项目是否已在缓存中(因为它会在您获取所有项目时预先缓存)?

最佳答案

在请求中使用 CacheControl.FORCE_CACHE。如果您收到状态代码为 503 的响应,则表示它不在缓存中。

关于android - 如何检查数据是否已经在缓存中 OkHttp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52106968/

相关文章:

c# - Android 等同于 .NET 中的 WebClient

android - 如果我在不关闭开放 Realm 实例的情况下关闭我的 Android 应用程序会怎样?

android - Espresso 测试 Android API 28 模拟器点击问题

caching - Meltdown 和 Spectre 之间有什么区别?

android - OkHttp 和 Retrofit 2 缓存和离线使用

java - 如何使用 android 在 SQLite 中添加更多列

spring - 如何更新/删除项目集合中已缓存的项目

node.js - Redis 缓存和 Mongo 的持久性架构

android - 如何在Android中使用okhttp库向api(http post)添加参数

android - 切换 fragment 时 OKHttp 崩溃