上传到特定文件夹 Firebase Storage NodeJS?
Upload into specific folder 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云存储没有真正的“文件夹”。
在云存储控制台中,存储桶中的文件以文件夹的层次结构呈现(就像本地硬盘上的文件系统一样)但这只是一种呈现文件的方式:没有' t 真正的 folders/directories 装在桶里。 Cloud Storage 控制台仅使用文件路径的不同部分通过使用“/”分隔符来“模拟”文件夹结构。
所以,你需要使用一个UploadOptions
object as shown in the doc和一个用一些“/”定义的destination
属性,如下:
const destinationFilename = "folder1/myfile.png";
bucket.upload('...', { destination: destinationFilename });
来自官方文档:
If you want to use a storage bucket other than the default provided above, or use multiple storage buckets in a single app, you can retrieve a reference to a custom bucket as shown below:
const bucket = admin.storage().bucket("foodImages");
(修改了代码以使用 ES6 的常量并适合您的示例)
来源:https://firebase.google.com/docs/storage/admin/start#use_custom_buckets
只有一件事,现在我们使用 ES6,您可以使用 const
而不是 var
嘿,我已经找到如何上传到 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云存储没有真正的“文件夹”。
在云存储控制台中,存储桶中的文件以文件夹的层次结构呈现(就像本地硬盘上的文件系统一样)但这只是一种呈现文件的方式:没有' t 真正的 folders/directories 装在桶里。 Cloud Storage 控制台仅使用文件路径的不同部分通过使用“/”分隔符来“模拟”文件夹结构。
所以,你需要使用一个UploadOptions
object as shown in the doc和一个用一些“/”定义的destination
属性,如下:
const destinationFilename = "folder1/myfile.png";
bucket.upload('...', { destination: destinationFilename });
来自官方文档:
If you want to use a storage bucket other than the default provided above, or use multiple storage buckets in a single app, you can retrieve a reference to a custom bucket as shown below:
const bucket = admin.storage().bucket("foodImages");
(修改了代码以使用 ES6 的常量并适合您的示例)
来源:https://firebase.google.com/docs/storage/admin/start#use_custom_buckets
只有一件事,现在我们使用 ES6,您可以使用 const
而不是 var