我正在为HTML5构建一个文件存储系统,使用indexedDB作为存储介质,通过xmlHttpRequest请求将响应类型设置为arrayBuffer(对于chrome)和blob(对于其他浏览器)从服务器请求文件。
即使文件集合大小为500MB或更大,一切都正常(嘿,它甚至可以达到GB级别)。但是当我将文件添加到indexedDB中时,如果单个文件超过约120MB,就会触发错误,因此无法存储。但是如果文件小于120MB,则会存储该文件。
请注意,仅在存储单个文件> 120MB时才会出现此错误,例如,200MB的.mp4文件将触发错误,但如果我有5个视频,每个视频的大小为100MB(因此总计为500MB),则一切都很好。
我想知道这是否是限制规则还是某些故障,并且两者是否具有相同的错误。我没有找到任何文档关于此问题。我在IE和Chrome中进行了测试。
编辑: 好的,当我存储文件时,显然在indexedDB的添加或put函数中出现了此错误:
在e.target.error.message中:
序列化值太大(大小为140989466字节,最大为133169152字节)