javascript - Node.js Google-云存储上传目的地规范

标签 javascript node.js google-cloud-storage google-cloud-platform

我有一个 Node.js 服务器,我正在使用 google-cloud 包将一些图像文件上传到 Firebase Storage

上传本身工作正常,但 google-cloud API 似乎只能将文件上传到 Firebase 存储根文件夹。

有什么方法可以指定上传图片的远程位置吗?

我现在在做什么:

const serviceAccount = require('./serviceAccount.json');

const storage = gcloud.storage({
   projectId: '*projectId*',
   credentials: serviceAccount
});

const storageBucket = storage.bucket('*bucket*');

storageBucket.upload(localFsPath)
   .then(data => /* Some stuff */)
   .catch(err => console.log(err));

有没有办法做这样的事情?

storageBucket.upload(path, { destination: 'a/b/c/file.jpg' })
   .then(data => /* Some stuff */)
   .catch(err => console.log(err));

最佳答案

正如@Jérôme 指出的那样,该方法是正确的。我忽略了目标路径字符串的错误格式,即“/x/y//z”。

明显有2个错误。

首先,路径不能以'/'开头,而是 Node (文件/文件夹)的名称。

有趣的是,第二个问题(“//”部分)并没有导致 API 抛出异常,而是导致 Firebase 递归地创建名为“/”的 Node (文件夹)的无限嵌套结构。

关于javascript - Node.js Google-云存储上传目的地规范,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40848917/

相关文章:

javascript - Angularjs,从工厂获取数据

javascript - WebRTC。信号已完成,但远程视频不工作

mysql - app.js 中的代码停止加载 CSS 资源

node.js - 通过http下载并使用nodejs流式上传到Google Cloud存储

google-chrome - 云存储下载似乎是恶意的

javascript - HtmlService 表不支持电子表格中的换行符和超链接

javascript - 在 node.js 中重新映射 require() 的本地路径

javascript - MongoDB:从用户文档中删除技能

python - 如何从 firebase 存储中获取 PDF 数据 - Python?

google-app-engine - 如何连接谷歌云存储中的一百万个文件