【发布时间】:2021-12-20 14:09:24
【问题描述】:
这个警告让我很困惑。我知道当您调用不带参数的 initializeApp 时它会出现,并且我知道该警告在这种情况下非常合适。
基于项目 ID 的配置对我的项目有效,因此为了避免警告,我在传递它之前明确地形成了这个配置:
// GCP_PROJECT seems to be required for cloud-functions where GCLOUD_PROJECT is missing
const projectId = process.env.GCP_PROJECT || process.env.GCLOUD_PROJECT;
assert(projectId, "Missing GCP_PROJECT or GCLOUD_PROJECT env variable");
const firebaseConfig = {
authDomain: `${projectId}.firebaseapp.com`,
databaseURL: `https://${projectId}.firebaseio.com`,
projectId,
storageBucket: `${projectId}.appspot.com`,
};
Firebase 继续给我同样的警告,我看不出有什么原因。
此代码在云函数的上下文中和之外都使用。如果 Google 的任何人在听,我认为在 de 文档中清楚地概述 GCP 中的各种组件在这些环境变量方面的区别是有用的:
GCP_PROJECT、GCLOUD_PRJOJECT 和 GOOGLE_CLOUD_PROJECT。不久前,我读到有人提到 GCLOUD_PRJOJECT 已被弃用,但它似乎仍在积极使用中。
我使用的是 firebase-admin 版本 10,但行为与 9 AFAIK 相同。
【问题讨论】:
-
显然,警告不是来自 firebase-admin Nodejs 客户端,而是来自 firebase-functions。见github.com/firebase/firebase-admin-node/issues/394
标签: node.js firebase firebase-admin