本地存储的大小限制为5M,当我在Service Worker中使用时,是否有任何缓存存储限制?
答案 0 :(得分:4)
截至2016年8月15日,Addy Osmani posted:
你可以储存多少?在Chrome和Opera中:您的存储空间是完整的 来源(而不是每个API)。两种存储机制都将存储数据 直到达到浏览器quota。应用可以检查多少配额 他们正在使用Quota Management API。 Firefox:没有限制,但是 存储50MB数据后会提示。移动Safari:最大50MB,桌面 Safari:无限制(5MB后提示),IE10 +最大250MB和 提示为10MB。 PouchDB track IDB存储行为。未来面临: 对于需要更多持久存储的应用程序,请参阅正在进行的工作 Durable Storage
其中 per origin 意味着像localStorage这样的API将与API一样共享存储空间,就像服务工作者Cache一样。
答案 1 :(得分:1)
这取决于最终的浏览器。 Chrome允许您询问无限存储空间(受用户在线硬盘大小限制),默认情况下为5 MB。 Safari和Firefox都默认为无限缓存。移动设备再次不同Chrome(Android)在移动设备默认为无限制,而Safari(iOS)限制为10MB。
答案 2 :(得分:1)
简短回答是它将是特定于浏览器的,截至目前(2016年8月30日),大多数浏览器尚未启动支持。
答案很长是Service Workers规范中提供的缓存仍然是工作草案。如果感兴趣,请查看w3 org service-worker规范以获取更多信息:
https://www.w3.org/TR/service-workers/
以下内容,根据Mozilla的文档,列出了浏览器与服务工作者以及Cache API的兼容性。
网络/ API /高速缓存强>
https://developer.mozilla.org/en-US/docs/Web/API/Cache#Browser_compatibility
Service Worker API
https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker#Browser_compatibility
随着越来越多的浏览器支持这些API,将浏览器实现映射到缓存限制以更正确地解决您的问题会更容易。随着事态的发展,我鼓励其他人改进这个答案。
目前,Jake Archibald(服务工作者规范的编辑)提供了以下站点来帮助监控并告知开发人员服务工作者的准备情况,包括各种浏览器中的缓存:
希望这有帮助