【问题标题】:Cloud Firestore and Google Cloud CredentialsCloud Firestore 和 Google Cloud 凭据
【发布时间】:2019-11-10 11:57:50
【问题描述】:

我有一些在 Firebase Functions 上运行的 javascript 代码,大部分都可以正常工作,首先使用它从 Firestore 中检索数据:

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

admin.initializeApp(functions.config().firebase);

let db = admin.firestore();

有时我会收到错误:

“获取文档时出错错误:无法加载默认凭据。”

它如何有时会工作并随机给出这个错误?

【问题讨论】:

    标签: node.js google-cloud-firestore firebase-admin


    【解决方案1】:

    您可以将 serviceAccountKey.json 添加到您的项目中,并使用提供的代码更改导入:

    var admin = require('firebase-admin');    
    var serviceAccount = require('path/to/serviceAccountKey.json');
    
    admin.initializeApp({
     credential: admin.credential.cert(serviceAccount),
     databaseURL: 'https://my-project.firebaseio.com'
    });
    

    【讨论】:

    • 谢谢。正如我所说,它有时甚至在没有凭据的情况下也能工作,因为它只是在写入 Firestore。我发现在发送结束函数的响应之前,我必须等到 promise 返回。让 setDoc = db.collection('sweepstakes1').doc('unsub').set(newinfo2) .then (doc => { res.status(200).send("response"); return null; })
    【解决方案2】:

    我发现在发送结束函数的响应之前,我必须等到 promise 返回。

      let setDoc = 
      db.collection('sweepstakes1').doc('unsub').set(newinfo2) 
      .then (doc => { res.status(200).send("response"); return 
      null; })
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-02-07
      • 2019-07-07
      • 1970-01-01
      • 2019-12-18
      • 2019-09-26
      • 2018-03-27
      • 1970-01-01
      • 2018-03-27
      相关资源
      最近更新 更多