会话之间是否可以在浏览器中存储超过100 MB?

时间:2018-06-17 09:56:02

标签: javascript google-chrome firefox local-storage storage

我们可以在浏览器中保留多少数据,以便在关闭/重新打开浏览器后我们可以再次访问这些文件?

LocalStorage seems to允许~5或10 MB(取决于浏览器)。

其他系统可能是可用的(例如IndexedDB),详见here,但它似乎相当复杂。

问题:是否有一种简单易用的技术(至少适用于Chrome + Firefox,甚至更好,如果完全跨浏览器,移动和桌面)允许存储超过100MB(最高500MB)吗

用例:允许使用高质量样本弹奏钢琴的网站(让我们说150 MB音频样本),并防止每次打开页面时都必须重新下载数据。

PS:我最好寻找不需要安装扩展程序或浏览器插件的解决方案。

1 个答案:

答案 0 :(得分:1)

是!

正如评论中所提到的,IndexedDB也是要走的路。关于不同浏览器之间的存储限制,PouchDB有一个很好的FAQ

  

虽然Firefox除磁盘空间外没有上限,但如果您的应用程序希望在本地存储超过50MB [在IndexedDB中],Firefox将要求用户使用非模态对话框确认这是正常的。

     

Android的工作原理与4.4及以上的Chrome(IndexedDB)相同,而较旧的版本最多可存储200MB(WebSQL)。

来自Chrome webpage.

  

临时存储在浏览器中运行的所有Web应用程序之间共享。{#它还在所有脱机API中共享,例如App Cache,IndexedDB和File System。但是,它不包括本地存储和会话存储等Web存储API,每个源的限制仍为5 MB。#}共享池最多可用磁盘空间的1/3。应用程序已使用的存储包含在共享池的计算中;也就是说,计算基于(可用存储空间+应用程序使用的存储空间)* .333。   每个应用最多可以拥有共享池的20%。例如,如果总可用磁盘空间为60 GB,则共享池为20 GB,应用程序最多可为4 GB。这是从可用磁盘空间(60 GB)的1/3(最多20 GB)的20%(最多4 GB)计算得出的。