gpt4 book ai didi

javascript - 如何有效地将网络流缓冲到 JavaScript 中的文件中?

转载 作者:行者123 更新时间:2023-11-28 08:06:55 24 4
gpt4 key购买 nike

在我们的 Web 应用程序中,我们试图允许用户为文件存储应用程序下载大文件(数十 GB 以上)。目前,我们有一个使用(现已停止使用)LocalFileSystem ( https://developer.mozilla.org/en-US/docs/Web/API/LocalFileSystem ) 功能的客户端下载方法。

我们从以前的服务器端下载方法转向基于 JavaScript 的解决方案的原因是为了错误处理和进度报告。文件实际上是以 block 的形式存储的,我们需要在下载时将它们从服务器流式传输到客户端。然而,由于压缩和其他几个因素,我们无法在初始化下载之前确定内容长度,因此任何设置内容长度 header 的尝试都是徒劳的。

如果不使用 LocalFileSystem,FireFox 等浏览器将被迫从本地存储中将整个文件加载到 ram 中的 javascript 对象中,以提示用户保存文件。

我的问题是:有没有办法通过javascript保存这些文件(而不将整个文件加载到内存中)?或者我们被迫回到服务器端下载?

最佳答案

您可以管理浏览器配置文件吗?如果您对应用程序有这种类型的控制,则可以破坏浏览器沙箱并升级当前配置文件的权限。这是通过网络为任何用户提供的,还是从仅使用浏览器的本地磁盘启动的?

关于javascript - 如何有效地将网络流缓冲到 JavaScript 中的文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24701361/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com