当前正在研究各种浏览器的indexdb限制。发现Chrome浏览器没有硬限制,但需要授予权限(Source),而Firefox是本地存储的50% (Source),但找不到Edge或Safari的任何内容。
我试用了Edge,发现它没有IE设置的限制:每个域500MB(Source)
很遗憾,navigator.storage.estimate()
在Edge https://developer.mozilla.org/en-US/docs/Web/API/StorageManager/estimate上不起作用
有人对此有使用Edge或Safari的经验吗?
答案 0 :(得分:3)
Microsoft Edge的IndexedDB限制为每个域最大500MB,或者每个域最大500MB,具体取决于卷大小:https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/compatibility/mt732551(v=vs.85)。
Microsoft Edge的IndexedDB限制为全局最大值的20%,类似于Firefox和Chrome:
这取决于设备和所使用的Edge版本。最新版本与Chrome / FF类似(原文如此),并且每个域都有以下限制-每个域最多可以占全局限制(适用于所有域)的20%:
来源:https://twitter.com/gregwhitworth/status/1020391736974094336
因此,每个域的数据库可以增长多少取决于硬盘驱动器的大小。
根据https://developers.google.com/web/fundamentals/instant-and-offline/web-storage/offline-for-pwa
,Safari对于台式机的IndexedDB限制是无限的在移动Safari中,应用程序最多可以使用50MB,而台式机Safari则可以无限存储(并在5MB后提示)
答案 1 :(得分:1)
目前Safari的文档记录不多,所以我想与Safari mobile(11.4)/ IndexedDB存储限制分享我的最新经验。
TLDR:50MB配额不适用于Safari移动版(11.4)上的IndexedDB存储
最初,我认为所有离线存储方法(Local + Cache + Session + IndexedDB + WebSQL + Cookies)的总和有50MB的硬限制。
我通过网络提取了180MB的数据,并将其直接转储到IndexedDB(浏览器报告IndexedDB的使用量为98MB,正在进行某种内部压缩),而Safari(移动版11.4)愉快地在IndexedDB中接受了该数据。
50MB的限制似乎仅适用于本地/缓存存储(可能是其他存储),而不适用于IndexedDB-我猜这里的卷%配额适用。
侧面说明:不要费心尝试通过使用LZ字符串或类似内容压缩内容来节省IndexedDB中的空间-浏览器的内部压缩实现意味着它没有什么不同或实际上增加了使用量!
答案 2 :(得分:0)
关于SAFARI的内容不多,但是对于MS Edge,根据MS EDGE提供的文档以及尝试使用MS Edge 38版,第一个答案中显示的表格是准确的。我可以确认,MS Edge 42版(我已经在ASUS平板电脑p027上安装了该版本)的限制和限制与Cache Storage API的Chrome完全相同。根据MDN https://developer.mozilla.org/en-US/docs/Web/API/StorageQuota,您可以查询和请求存储使用情况和配额信息。这是一项实验性技术,但会给您足够的估计,并且MS EDGE 42版本支持此属性(至少在上述标签上,并且我的机器/台式机/笔记本电脑上未安装MS Edge 42因为如果不更新Windows itselt,您将无法安装/更新它!)...希望这部分信息对您有用,如果您发现更好的信息,请与我们分享。干杯:)
P.S。但是可以肯定的是,Safari和Edge都已认真对待它,并且已经将其作为开发的重点。此外,Safari 12或更高版本至少在移动设备上支持PWA到文本/图像级别最高50mb,但不支持视频。
答案 3 :(得分:0)
截至2020年10月19日,接受的答案似乎无法通过示例证明,因为我刚刚使用indexedDB将30G加载到了Chrome和Edge(二者的最新版本)中。我一次这样做是1G,每次迭代有数百个对象,以使两个浏览器都有足够的机会反对(如果他们选择这样做)。他们没有。
数据保持不变,并在重新启动浏览器后可用。根据公认的答案,我应该被限制在4G(20G的20%,因为我的磁盘是500G或“> 128GB”)。
答案 4 :(得分:0)
在 iPadOS 14.5.1 的 Safari 中,一个网站最多可以使用 2 GB 的 IndexedDB。