使用Node JS Firebase Admin SDK上传文件

时间:2018-03-20 21:40:52

标签: firebase google-cloud-functions firebase-storage

更新:下面的代码工作正常,因为它是自己的“test.js”文件。它仅在Firebase云功能的上下文中不起作用。

============================

我正在尝试从Firebase云功能将文件上传到Firebase存储。我正在使用

在本地测试
firebase serve --only functions

下面的代码片段只是为了查看问题...我实际上是在Cloud Functions端点中调用“uploadFile”。一切看起来都很好,直到“bucket.upload(...)”行。我可以在该行之前回显选项,然后我得到一个非描述性的错误,它“以状态结束:'崩溃'”。

有什么想法吗?这对我来说似乎很简单!

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

var serviceAccount = require("./certs/key-name.json");

firebase.initializeApp({
    credential: firebase.credential.cert(serviceAccount),
    databaseURL: "https://my-app.firebaseio.com",
    storageBucket: "my-app.appspot.com"
});

var storage = firebase.storage();
var metadata = {
    id: '1234'
};
uploadFile('myFile.pdf', metadata);

function uploadFile(file, metadata) {
    var bucket = storage.bucket();
    var options = {
        destination: file,
        resumable: false,
        metadata: {
            metadata: metadata
        }
    };
    bucket.upload(file, options, function(err, remoteFile) {
        if (!err) {
            console.log("Uploaded!");
        } else {
            console.log(err);
        }
    });
}

0 个答案:

没有答案