node.js - 谷歌云存储节点客户端 ResumableUploadError
问题描述
我们有一个在 GCP 和 Kubernetes 服务中运行的应用程序。后端位于运行节点/高山基础映像的容器内。我们尝试使用 Google Cloud Storage ( @google-cloud/storage": "~2.0.3"
) 的 nodejs 客户端库将文件更新到我们的存储桶,就像在 github repo 示例中一样:
storage.bucket(bucketName)
.upload(path.join(sourcePath, filename),
{
'gzip': true,
'metadata': {
'cacheControl': 'public, max-age=31536000',
},
}, (err) => {
if (err) {
return reject(err);
}
return resolve(true);
});
});
它适用于小于 5Mb 的文件,但是当我得到更大的文件时,我得到一个错误:
{"name":"ResumableUploadError"}
几次谷歌搜索后,我看到客户端自动切换到可恢复上传。不幸的是,我找不到任何关于如何使用节点客户端管理这种特殊情况的示例。我们希望最多允许 50Mb,所以现在有点担心。
解决方案
好的,你知道问题是因为我的容器运行节点/高山映像。alpine 发行版被剥离到最低限度,因此没有~/.config文件夹被google-cloud/storage节点库使用的Configstore库使用。我不得不进入 repo 检查代码并在file.ts中看到注释一旦我在容器中添加了文件夹(通过在 Dockerfile 中添加 RUN mkdir ~/.config),一切都开始按预期工作。
推荐阅读
- android - 如何在 Android Studio 中处理“java.io.FileNotFoundException: No content provider”错误
- scala - 将元组数组转换为地图
- timezone - 基于时区映射的 SQL Server 时区信息
- java - CLOSE_WAIT 中的 Jetty 连接未关闭
- python - 如何向此列表框添加滚动条
- reactjs - react.js井字棋程序
- java - 可以有效存储和检查任意三个连续添加元素的总和是否等于给定总和的数据结构
- facebook - user_posts 在 Facebook GraphAPI Explorer 中不可用
- javascript - Javascript 正则表达式组不捕获重复组?
- python - 熊猫在两个excel中组合数据