IE10上indexeddb的存储限制 [英] Storage limit for indexeddb on IE10

查看:273
本文介绍了IE10上indexeddb的存储限制的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们正在构建一个Web应用程序,该应用程序使用indexedDB将大量文件存储为blob.如果用户最大程度地使用我们的应用,则我们可以在indexeddb中存储多达15GB的文件.

We are building a web-app that store lots of files as blobs with indexedDB. If the user uses our app at its maximum, we could store as much as 15GB of file in indexeddb.

我们遇到了IE10的问题,我强烈怀疑这是配额问题.

We ran into a problem with IE10, that I strongly suspect is a quota issue.

成功保存了一些文件之后,对store.put(data, key);的新调用将永远不会结束.

After having successfully saved some files, a new call to store.put(data, key); will never ends.

基本上,将调用该函数,但不会调用成功事件或错误事件.

Basically, the function will be called, but no success event nor error event will be called.

如果我查看IE 10的IndexedDB文件夹,将会看到无限创建和删除的临时文件(每个文件大小为512 kB)的全部信息.

If I look into the IndexedDB folder of IE 10 I'll see a handfull of what looks like temporary files (of 512 kB each) getting created and removed indefinitely.

在查看缓存和数据库"参数窗口时,我发现我站点的数据库已达到 250 MB .

When looking at the "Cache and Database" paramaters window, I see that my site's database has reached 250 MB.

进一步,我发现了此博客条目

Looking further, I found this blog entry http://msdnrss.thecoderblogs.com/2012/12/using-html5javascript-in-windows-store-apps-data-access-and-storage-mechanism-ii/ which incidently says that the storage limit for Windows Store apps is 250 MB.

我没有使用任何Windows Store机制,但我想我可能会受到相同任意限制的损害.

I am not using any Windows Store mechanism, but I figured I could be victim of the same arbitrary limit.

所以,我的问题是:

  • 是否有任何方法可以绕过此限制?要求用户允许其超过10 MB的限制,但是当达到250 MB时,我看不到任何问题.

  • Is there any way to bypass this limit ? User is asked for permission to exceed a 10 MB limit, but I saw no question popping to the user when the 250 MB was reached.

是否还有其他方法可以通过IE10存储超过250 MB的数据.

Is there any other way to store more than 250 MB of data with IE10.

谢谢,我会提供任何线索.

Thanks, I'll take any clues.

推荐答案

我怕你做不到.提供存储限制并要求用户允许更多空间是浏览器供应商的责任.因此,我认为第一种选择不适用.

I afraid you can't. Providing the storage limit and asking the user to allow more space is the responsibility of the browser vendor. So I don't think the first option is applicable.

我知道用户可以允许网站超过允许的上限(互联网选项>常规>浏览历史记录>设置>缓存和数据库),但是我不知道这是否会超过250MB.可能这是您不能超过的硬编码限制.

I know the user can allow a website to exceed a give limit (internet options > General > Browsing history > settings > caches and databases), but I don't know if that will overrule the 250MB. It can be that this is a hardcoded limit you can't exceed.

此限制已绑定到域,这意味着您无法通过创建多个数据库来解决此问题.唯一的解决方案是将其存储在多个域中,但是在那种情况下,您将无法交叉访问它们.另外,正如我所看到的,结合indexeddb API和File API的250MB限制

This limit is bound to a domain meaning you can't solve it by creating multiple databases. The only solution would be to store on multiple domains, but in that case you can't cross access them. Also as I see the 250MB limit will be for indexeddb API and File API combined

这篇关于IE10上indexeddb的存储限制的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆