【发布时间】:2021-12-06 20:19:06
【问题描述】:
我一直想知道在 UI 组件内的内存中缓存/保存数据与在客户端浏览器中缓存与 HTTP 的 cache-control 标头之间有什么区别。我认为像 react query 这样的库是前者——它将获取的数据存储在某个全局存储中,并允许用户使用 staleTime 和 cacheTime 来微调数据的新鲜度。
但我想知道我们是否可以通过利用浏览器的缓存来实现缓存 - 每种方法的优缺点是什么。
在我看来,如果我们为 React 查询之类的组件或库实现内存缓存机制,但它与 HTTP-Cache 冲突 - 如Cache-control: no-store,我们不应该将其缓存在组件或库中。例如,有效期为 30 秒的二维码。我想知道是否有一种方法可以从后端发送的 http 响应标头中自动生成组件或库的配置。但我不确定我该怎么做。
【问题讨论】:
标签: javascript http caching browser-cache react-query