每个https://firebase.google.com/docs/storage/admin/start下面的代码返回对Google Cloud Storage客户端库中定义的存储桶的引用
var admin = require("firebase-admin");
var bucket = admin.storage().bucket()
但是第二行在firebase函数中失败(但是admin.database()起作用),我猜是Google Cloud Storage客户端库未正确导入,根据https://cloud.google.com/storage/docs/reference/libraries可以通过
完成npm install --save @google-cloud/storage
const Storage = require('@google-cloud/storage');
但是如何将存储与从管理员创建的存储桶相关联?
答案 0 :(得分:0)
(https://www.npmjs.com/package/firebase-admin)
使用Firebase管理员解析的默认存储桶:
const bucket = admin.storage().bucket();
使用Firebase管理员解决的自定义存储段:
const bucketName = "my-awesome-bucket";
const bucket = admin.storage().bucket(bucketName);
使用@ google-cloud / storage解决的自定义存储桶:
(https://www.npmjs.com/package/@google-cloud/storage)
const Storage = require('@google-cloud/storage');
const storage = new Storage({projectId: 'myAwesomeProject'});
const bucketName = "my-awesome-bucket";
const bucket = storage.bucket(bucketName);
.bucket()方法都将创建一个Bucket对象,以与Cloud Storage存储桶进行交互。
这是官方文档所说的:
您可以将Admin SDK返回的存储桶引用与正式的Google Cloud Storage客户端库一起使用,以上传,下载和修改与Firebase项目关联的存储桶中的内容。 >