代码之家  ›  专栏  ›  技术社区  ›  trashbytes

Firebase云功能:获取应用程序默认凭据时发生意外错误。无法加载默认凭据

  •  1
  • trashbytes  · 技术社区  · 8 年前

    我正在用nativescript和firebase开发一个跨平台应用程序,我有一些云函数在创建和写入时被触发,但当这些函数“冷”(在较长时间的不活动后)时,我大多数时候都会遇到此错误,并且函数无法正确执行。不过,以下请求确实有效。

    Error: Unexpected error while acquiring application default credentials: Could not load the default credentials. Browse to https://developers.google.com/accounts/docs/application-default-credentials for more information.
    at GoogleAuth.<anonymous> (/user_code/node_modules/firebase-admin/node_modules/google-auth-library/build/src/auth/googleauth.js:229:31)
    at step (/user_code/node_modules/firebase-admin/node_modules/google-auth-library/build/src/auth/googleauth.js:47:23)
    at Object.next (/user_code/node_modules/firebase-admin/node_modules/google-auth-library/build/src/auth/googleauth.js:28:53)
    at fulfilled (/user_code/node_modules/firebase-admin/node_modules/google-auth-library/build/src/auth/googleauth.js:19:58)
    at process._tickDomainCallback (internal/process/next_tick.js:135:7)
    

    我的前三行函数。js如下所示(如文档中所示):

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

    我尝试使用从控制台生成的service\u帐户文件(如所述 here )但我得到了一个不同的错误,我想这是因为我在Googles服务器上运行它,而不是自己托管它。

    知道为什么会发生这种情况吗?我怎样才能防止这种情况发生?

    1 回复  |  直到 8 年前
        1
  •  1
  •   Doug Stevenson    8 年前

    使用新的firebase功能1。x SDK,您可以这样初始化Admin SDK:

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

    确保您使用的是该模块的最新版本。

    推荐文章