上传到特定文件夹Firebase Storage NodeJS?

rdlzhqv9  于 2023-11-21  发布在  其他
关注(0)|答案(2)|浏览(165)

我已经知道如何上传到Firebase存储:

admin.initializeApp({
  credential: secret,
  databaseURL: secret,
  storageBucket: secret,
});

var bucket = admin.storage().bucket();

const uploadToFireStorage = (filename, query, fileType, imageURL) => {
  bucket.upload(filename).then(console.log("uploaded"));
};

字符串
正如你可以看到我的bucket.upload函数,我可以上传到firebase存储,但它被上传到根文件夹,我想把它放在/foodImages/myfile. png下,例如,有什么想法吗?

zlwx9yxi

zlwx9yxi1#

事实上,Google Cloud Storage并没有真正的“文件夹”。
在云存储控制台中,存储桶中的文件以文件夹的层次结构呈现(就像本地硬盘上的文件系统一样),但这只是文件的一种呈现方式:存储桶中没有真正的文件夹/目录。云存储控制台只是使用文件路径的不同部分来“模拟”文件夹结构,使用“/”字符。
所以,你需要使用一个UploadOptions对象,如文档中所示,带有一个destination属性,该属性是用一些“/"定义的,如下所示:

const destinationFilename = "folder1/myfile.png";
bucket.upload('...', { destination: destinationFilename });

字符串

blmhpbnm

blmhpbnm2#

从官方文件:
如果您想使用上述默认存储桶以外的存储桶,或者在单个应用中使用多个存储桶,则可以检索对自定义存储桶的引用,如下所示:

const bucket = admin.storage().bucket("foodImages");

字符串
(修改代码以使用ES6的const并适合您的示例)
来源:https://firebase.google.com/docs/storage/admin/start#use_custom_buckets
有一件事,现在我们使用ES6,你可以使用const而不是var

相关问题