微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

如何解决上传到特定文件夹 Firebase Storage NodeJS?

嘿,我已经找到了如何上传到 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 下例如 有什么想法吗?

解决方法

实际上 Google Cloud Storage 没有真正的“文件夹”。

在 Cloud Storage 控制台中,存储桶中的文件以文件夹的分层结构呈现(就像本地硬盘上的文件系统一样)但这只是呈现文件的一种方式:没有真正的存储桶中的文件夹/目录。 Cloud Storage 控制台只是使用文件路径的不同部分,通过使用“/”分隔符来“模拟”文件夹结构。

因此,您需要使用 UploadOptions 中所示的 doc 对象和 destination 属性,该属性用一些“/”定义,如下所示:

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

来自官方文档:

如果您想使用上面提供的默认存储桶以外的存储桶,或者在单个应用中使用多个存储桶,您可以检索对自定义存储桶的引用,如下所示:

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

(修改代码以使用 ES6 的 const 并适合您的示例)

来源:https://firebase.google.com/docs/storage/admin/start#use_custom_buckets

只有一件事,现在我们使用 ES6,您可以使用 const 代替 var

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?