函数中的Firestore会引发有关外部流量的计费错误

时间:2018-01-26 01:37:54

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

我有一个firebase功能,可以在上传图像时创建缩略图。它工作得很好!

然后我决定将缩略图URL存储在firestore集合中的正确文档中。我浏览了这些示例,并通过管理对象

找到了访问我的firestore的相关代码
const admin = require("firebase-admin");
admin.initializeApp(functions.config().firebase);

// etc

return admin.firestore()
            .collection("my-collection")
            .doc(colId)
            .set({ thumbUrl: fileUrl });

但是当我添加此代码时,函数开始失败并显示以下消息:

  

未配置结算帐户。外部网络无法访问   配额严重受限。配置结算帐户以删除这些帐户   限制

我的代码

// before is the upload to bucket that works
.then(() => {
  fs.unlinkSync(tempFilePath);

  return Promise.all([
    tempFilePath.getSignedUrl({
      action: "read",
      expires: "03-09-2491"
      })
    ]);
  })
  .then(results => {
    console.log("Got thumb signed URL");
    const thumbResult = results[0];
    const thumbFileUrl = thumbResult[0];

    // Add the URLs to the Database
    return admin
      .firestore()
      .collection("my-collection")
      .doc(colId)
      .set({ thumbUrl: thumbFileUrl });
  })
  .then(() => console.log("User was updated with thumb url"));

嗯,我知道免费套餐只允许外部访问Google的内部资料,但我正在使用firestore ......这是Google。

可能出现什么问题?

firebase-admin是v5.4.2

firebase-functions是v0.7.1

1 个答案:

答案 0 :(得分:0)

使用免费的Spark计划时,即使您不尝试进行任何外部访问,这些消息也会出现。