我目前正在开发一个离线应用程序项目,其中存储在缓存中的文件数量相对较大(确切地说是432个)。
由于每个用户需求的文件都是动态的,因此我有一个方法来创建数组并将其传递给服务工作者。这一切都很顺利,如果我只是简单地打印出这个数组,它就包含了完整的文件列表。
问题出现在我加载所有内容后检查缓存存储时,出于某种原因只有49个文件被存储,而没有提示其余的文件去哪里了。
我使用Firefox,并知道缓存具有无限的存储空间,超过50MB时会有提示。在存储这49个文件后,总内存使用量略低于19MB,因此我不认为这是内存问题。
我已经搜索了服务工作者相关问题,但没有找到任何人遇到同样的问题,希望这里的某位能够帮助!
- 谢谢 :)
caches.open('my-cache-name').then(cache => cache.keys()).then(requests => requests.map(request => request.url)).then(console.log)
- Jeff Posnick