问题标签 [cacheapi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angular - 无法从 Safari 的缓存中删除文件
在 Angular 6 应用程序中,我使用Cache API来存储和删除 MP3 文件。
在 Safari 中,当尝试删除文件时它不会被删除,并且我收到“配额超出”错误消息(在 Chrome 中它运行良好)。
我创建了一个示例 Angular Firebase 应用程序,以便您可以看到问题。
重现问题的步骤:
- 打开 Safari(移动设备或 Mac 电脑)
- 点击“保存文件”按钮
- 点击“删除文件”(该文件应该被删除,但它不是)
- 再次单击“保存文件”,您将收到“配额超出”消息。
谁能帮我看看我的代码有什么问题?
我调用删除文件的方法是removeFile()
app.component.ts
包.json
service-worker - 对频繁更改的数据的 PWA 离线功能
渐进式 Web 应用程序的离线功能对于显示经常变化的数据(如银行账户余额)的应用程序是一个好主意吗?
如果用户正在使用他的 PWA 离线模式并导航到例如银行产品余额部分,则他实际上没有查看有关其余额的更新数据并允许基于可能未更新的数据进行操作。
对于经常更改的数据,我是否错过了这种方法 (PWA) 的某些内容?
javascript - 获取服务工作者内部缓存响应的响应头
我想在服务工作者中获取缓存响应的响应标头。这样做的目的是让我可以读取一个名为“Modified”的自定义标头,通过将其与同一 URL 的“HEAD”获取的响应标头进行比较来查看是否有必要获取数据的新副本。
在安装服务工作者时,我用一些响应填充了一个名为 v1::fundamentals 的缓存。然后我注册一个获取侦听器,它在缓存中查找请求,如果存在,则为它提供服务。然后,我想用非陈旧内容异步更新缓存,但前提是“修改”标头包含比缓存中的时间戳更新的时间戳。在下面的简化代码中,我尝试使用 headers.get() 访问标题,但我总是得到一个 null 作为回报。为什么是这样?
当我查看 Chrome devtools 中的缓存时,标头非常多,我只是无法从服务人员中获取它们。
javascript - 在 Cache API 中,使用 caches.match(event.request) 和 caches.match(event.request.url) 有什么区别
我正在与服务人员一起工作,我有以下代码
当我试图从缓存中获取这些文件时,它不起作用,但是当我将代码更改为
代替
它完美无缺
caching - @Cacheable 注解,在不同的方法中使用相同的值
我正在尝试使用 Spring @Cacheable 注释。
当我执行第一个方法时List<User>
,我得到:
- 第一次:从数据库中选择所有字段
- 第二次:从缓存中选择所有字段
- 第三次:从缓存中选择所有字段
到目前为止,这很好。
当我执行第二种方法时findOne(String userId)
,我得到的结果来自:
- 第一次:从数据库中选择特定字段
- 第二次:从缓存中选择特定字段
- 第三次:从缓存中选择特定字段
这又是好事。
当我执行第一个方法时List<User>
,我得到:
从缓存中选择所有字段数据
问题:这两种方法(List<User>
并且findOne(String userId)
具有相同的缓存名称但它们返回不同的结果。
axios - Cache API 是否有 axios 缓存适配器?
axios 是否有一个扩展,它使用 Cache API 来缓存对带有Cache API的请求的响应。
(或者也许是一个如何自己实现它的例子?)
javascript - 服务工作者 CacheAPI 使用带有 cache.matchAll 的 `Time Cached` 属性
我在我们的网络应用程序中缓存了一些数据,如缩略图和 JSON。现在我想在达到磁盘空间时删除旧数据。
Time Cached
Chrome 在他的网络工具中显示了缓存存储中的属性(不完美,它没有显示自创响应的正确时间) 。
所以这个数据必须在某个地方,我想使用它。
我的计划是使用属性并按属性cache.matchAll
对结果进行排序Time Cached
以删除最旧的结果。
但是 match All 只返回正常的响应,我没有时间缓存。
javascript - 服务工作者缓存进度
我是 Java 脚本和 PWA 的新手。
我正在尝试images/css/audio/video/.html
使用我使用https://developers.google.com和其他资源成功完成的缓存 API 将我的所有内容加载到缓存中。
我现在的问题是:
很快内容加载到缓存中,SW(服务工作者)应该告诉所有内容都已加载。我试图遍历我想要缓存的静态内容,并尝试使用警报,但它说
Uncaught (in promise) ReferenceError: alert is not defined
SW 如何在不点击任何按钮或交互的情况下告诉主页(比如 index.html)内容已被缓存?
如果进度条有可能显示将内容加载到缓存中的进度?
以及告诉您的实际缓存容量是“this”,加载内容后剩下的是“this”?