【发布时间】:2021-12-21 03:20:55
【问题描述】:
我在 Node 服务器上运行以下代码。
import admin from 'firebase-admin';
import {getAuth} from 'firebase/auth';
class MyFirebase {
constructor() {
console.log("MyFirebase Constructor");
this.firebaseApp = admin.initializeApp({
credential: admin.credential.cert("PATH_TO_CERT/cert.json"),
databaseURL: "https://DATABASE_URL",
});
console.log("App name="+firebaseApp.name);
this.defaultAuth = getAuth(firebaseApp);
this.database = this.firebaseApp.database();
// database ref code here...
}
}
它会抛出以下错误:
return app.container.getProvider(name); TypeError:无法读取未定义的属性“getProvider”
如果我从 getAuth(..) 调用中删除“firebaseApp”,我会收到此错误:
没有创建 Firebase 应用“[DEFAULT”] - 调用 Firebase App.initializeApp() (app/no-app)
但是“console.log("App Name...")" 行会产生:
应用名称=[DEFAULT]
很明显,已经创建了一个默认应用程序。此外,如果我删除“getAuth...”调用,数据库调用从下面的实时数据库中提取数据就可以正常工作,这似乎意味着身份验证工作正常,因为我可以访问数据库中的数据。
这到底是怎么回事?
【问题讨论】:
标签: node.js firebase-authentication firebase-admin