javascript - 气体 : "InternalError: Array length exceeds supported capacity limit."

标签 javascript google-apps-script blob urlfetch

我正在向 Amazon S3 服务器运行 URLFetchApp 请求,以提取音频文件并将其重新定位到 Google 云端硬盘。 HTTPResponse 以 XML 格式返回。

我运行以下代码来转换为可以存储在 Google 云端硬盘中的可用 blob:

/*driveAppFolder, fileName, response are pre-defined variables from earlier in the program*/

var responseBlob = response.getBlob();
var driveAppFile = driveAppFolder.createFile(blob).setName(fileName);

此代码在达到一定大小时可以完美运行。我还没有弄清楚限制,但我知道 50MB 文件(52657324 字节)将阻止 blob 生成并出现错误:

InternalError: Array length 52389150 exceeds supported capacity limit. 

我意识到处理了类似的 JavaScript 错误 here ,但我目前被锁定在 Google Apps 脚本的范围内。有没有办法可以解决这种限制并制作 Blob ?

最佳答案

这个答案怎么样? 50 MB 是 52,428,800 字节。在 Google Apps 脚本中,blob 的大小存在限制。最大大小为 52,428,800 字节。所以在你的情况下,会发生这样的错误。在您的情况下,您下载了这么大的文件。当你下载的时候,使用下面的方法怎么样?

  1. 范围使用部分下载。
  2. 使用库从 URL 下载大文件。
    • 该库使用部分下载。

引用文献:

关于javascript - 气体 : "InternalError: Array length exceeds supported capacity limit.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52525797/

相关文章:

javascript - 如何知道 puppeteer 实例是否已经存在?

java - FinalizationException - AppEngine Java Blobstore API

javascript - 如何将多行字符串打印到 blob 中?

javascript - Google 脚本 - 表单 - 删除分页符/节时出现问题 - "Invalid data updating form"

google-apps-script - 在下拉列表更改时运行 Google Apps 脚本

php - 如何使用 java 将长 blob(图像)上传到 mysql 数据库并在 php 中检索?

javascript - 如何每1-3秒调用一个函数?

javascript - 小部件 CSS 被外部页面 CSS 干扰

javascript - Zurb Foundation 4 显示模态 : Won't close

google-apps-script - 在 Google Apps 脚本中,如何为我实现的服务设置 HTTP 响应代码?