Node.js Google云存储上传目标规范

我有一个Node.js服务器,我正在使用google-cloud软件包将一些图像file upload到Firebase存储

上传本身工作正常,但谷歌云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所指出的那样,这种做法是正确的。 我忽略了错误的目标pathstring格式,它是'/ x / y // z'。

显然有两个错误。

首先,path不能以'/'开始,而是以节点(文件/文件夹)的名字开头。

第二个问题('//'部分)有趣的是没有导致API抛出,但是导致Firebaserecursion地创build了名为“/”的节点(文件夹)的无限嵌套结构。