使用节点中的firebase-admin将fire上传到Firebase存储

mspsb9vt  于 2023-08-07  发布在  其他
关注(0)|答案(1)|浏览(113)

我需要使用firebase-admin从Node脚本上传文件到Firebase存储。
这就是我在浏览器中做的事情:(IT WORKS)

// THIS IS INSIDE A FUNCTION
const storageRef = firebase.storage().ref('my-images/' + fileName);
const uploadTask = storageRef.put(file,metadata);

字符串
这就是我在Node脚本中尝试做的:**

const admin = require('firebase-admin');
admin.initializeApp();

// THIS IS INSIDE A FUNCTION
const storageRef = admin.storage().ref('my-images/' + fileName);
const uploadTask = storageRef.put(file,metadata);


我得到了错误:

TypeError: admin.storage(...).ref is not a function

我也试过:

admin.initializeApp({
  credential: admin.credential.cert(serviceAccount),
  storageBucket: "MY_BUCKET.appspot.com"
});

// THIS IS INSIDE A FUNCTION
const storageRef = admin.storage().bucket().ref('my-images/' + fileName);
const uploadTask = storageRef.put(file,metadata);


我得到了错误:

TypeError: admin.storage(...).bucket(...).ref is not a function

问题

我需要将文件保存在my-images文件夹中的默认存储桶中。做这件事的正确方法是什么?

r1zk6ea1

r1zk6ea11#

对于Google Cloud Storage Node.js Client,您需要使用与JavaScript SDK不同的方法。
更准确地说,您需要使用Bucketupload()方法,如下所示:

bucket.upload('my-images/' + fileName).then(function(data) {
  const file = data[0];
});

字符串
您将在文档中找到更多示例(上面的链接)

相关问题