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

firebase管理员处理多个环境

  •  0
  • HRK44  · 技术社区  · 5 年前

    我对firebase管理员(和firebase一般来说)很陌生。

    我在firebase上有一个名为x的项目,我在里面创建了两个android应用程序 prod dev 是的。

    要初始化nodejs firebase管理,我将传递从firebase控制台下载的service-account.json。一开始我以为每个应用程序都有一个,但似乎这是一个项目级别。

    我想使用 messaging 功能,它工作良好,但我不确定我发送它的环境(我不是android开发人员,只是nodejs)。

    我的问题是,如何初始化firebase管理员,使其指向 产品 开发 是吗?我通常使用env变量来处理这类事情,但是我不知道传递给 initializeApp() 功能。

    我试过了 https://firebase.google.com/docs/admin/setup#initialize_multiple_apps 但我不知道我能说什么 开发 产品 应用程序?

    我就是这样初始化的:

    const app = firebaseAdmin.initializeApp({
        credential: firebaseAdmin.credential.applicationDefault()
    });
    
    ...
    
    app.messaging().send(message)
     .then((response) => {
         // Response is a message ID string.
         console.log('Successfully sent message:', response);
     })
     .catch((error) => {
         console.log('Error sending message:', error);
     });
    

    谢谢

    1 回复  |  直到 5 年前
        1
  •  1
  •   andresmijares    5 年前

    您需要为每个使用的环境创建一个项目,这是常见的做法。

    根据您的使用情况,您可以为每个用户选择不同的定价计划。

    导出每个sdk密钥,您可以基于环境变量或任何其他可能对您有用的技术进行实例化。