Jay*_*ing 22 javascript html5 indexeddb
我编写了一个离线应用程序,它利用IDB存储通常存在于MySQL数据库中以供离线使用的图像和文本.
但是,我试图找出一种方法,我可以读取IndexedDB的设备存储限制.我目前正在使用以下方法来确定这一点,尽管它仅适用于Chrome.
我正在使用/sf/answers/1284537201/中的代码段,它可以获得storageInfo
基于WebKit的内容,但是如果有人知道如何在FF&IE上获取它,更具体地说是Safari会很棒.
根据我收集的内容,这将返回该浏览器为域而不仅仅是IDB存储的所有内容的使用配额.但是,我使用的是重新配额.从这个我要么执行AJAX请求到服务器来获取所有将要存储的文件的估计规模,制定出是否有足够的存储空间,否则我将计算存储在IDB的ammount的制定出是否有足够的存储更多.
我想知道是否有人采用更"流线型"的方法?还有一种方法可以检查FF/IE中的重新配额,特别是Safari,甚至可以检查IDB的配额.
Ste*_*fen 14
目前唯一可用且仅适用于chrome的API是navigator.webkitTemporaryStorage.queryUsageAndQuota()
.
Firefox 也计划实现这个API.
还有两个实验性API navigator.storageQuota.queryInfo(type)
,navigator.storage.estimate()
如果您运行chrome,则可用--enable-experimental-web-platform-features
.有关详细信息,请访问:https://groups.google.com/a/chromium.org/forum/#!searchin/blink-dev/quota-api/blink-dev/P6eY26vB91c/Ri4ohXOPBQAJ
我认为Storage quota estimate()API是最有趣的.它仍然是草案,但chrome和mozilla目前正在实施此API.
不幸的是,当Edge和Safari将实现此API 时,目前还没有可用的公开信息.
Edge目前有一个非常不同的配额模型 - 而不是整个原点限制,每种存储类型(索引数据库,本地存储等)都有自己的限制.
更新:此功能已添加到Chrome 52(试验标志)和Firefox 51(每晚)
navigator.storage.estimate().then((data)=>console.log(data)) // Object { quota: 2147483648, usage: 0 }
归档时间: |
|
查看次数: |
7582 次 |
最近记录: |