Firebase Cloud Function无法写入存储

时间:2018-08-11 09:57:08

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

每次在Firestore中的集合中添加新文档时,我都试图创建一个在Firebase Storage中写入文件的云功能

我的伪代码很简单:

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


exports.writeToStorage = functions.firestore.document("problems/{problem_id}").onCreate(
    (snap, context) => {
        admin.initializeApp();
        var storage = admin.storage();
        var fileStream = storage.bucket("test").file("test.txt").createWriteStream();
        fileStream.write("Hello, World!");
        fileStream.on('error', (err) => {
            console.error(`${ this.archive }: Error storage file write.`);
            console.error(`${ this.archive }: ${JSON.stringify(err)}`);
        });
        fileStream.end();
    }
);

但是以某种方式我无法使其工作,这是我从日志中得到的错误:

  

{“代码”:403,“错误”:[{“域”:“全局”,“原因”:“禁止”,“消息”:“ xxx-dev-exxxe@appspot.gserviceaccount.com不拥有对test / test.txt的storage.objects.create的访问权限。 “}

我尝试在Google云控制台上设置IAM角色,并给该帐户和默认的firebase-admin-sdk帐户“存储管理员”角色,但是仍然出现相同的错误

0 个答案:

没有答案