+
95
-

回答

FileSaver.js

该插件将客户端内存存储中的文件给导出并打包.但是这插件有很大的限制就是文件大小限制,谷歌浏览器都只能2GB以下,其他更低。因为浏览器的内存非常有限,所以就不考虑了

StreamSaver.js

StreamSaver.js采用直接创建一个可写流到文件系统的方法。而不是将数据保存在客户端存储或内存中。对于需要保存在客户端创建的大量数据的操作来说是完美的解决方案。

有了读写流的能力,还需要解决的一个问题就是如何维持一个持续的通道,保证能够一边在下载,一边把下载的东西写到本地。制造一个(不存在的)下载链接,然后用 Service Worker 去拦截对这个下载链接的请求,持续往这下载链接写入文件流就可以了。

网友回复

我知道答案,我要回答