在 javascript 文件中设置 firebase-admin sdk

IT技术 javascript reactjs firebase firebase-realtime-database
2021-05-20 19:58:59

我的最终目标是使用用户 ID 获取用户电子邮件。到目前为止,我发现我需要使用 firebase admin SDK。现在我有这个代码:

var admin = require("firebase-admin");

var serviceAccount = require("./serviceAccountKey");

admin.initializeApp({
    credential: admin.credential.cert(serviceAccount),
    databaseURL: "https://zdajtotestdb.firebaseio.com"
});

export default admin;

serviceAccountKey 是我从这里的 firebase 项目下载的文件(对不起,它是波兰语)

在此处输入图片说明

我尝试使用此视频作为教程/参考

https://youtu.be/WtYzHTXHBp0

现在,当我尝试做任何事情时,我会在 npm start 控制台中得到这个:

20:22-48 关键依赖:依赖的请求是一个表达式

   ./node_modules/google-gax/node_modules/grpc/src/grpc_extension.js
32:12-33 Critical dependency: the request of a dependency is an expression

   ./node_modules/hash-stream-validation/index.js
Module not found: Can't resolve 'fast-crc32c' in '/home/iron/Documents?>/Projects/zdajto-admin-panel/node_modules/hash-stream-validation'

搜索关键字以了解有关每个警告的更多信息。要忽略,请将 // eslint-disable-next-line 添加到前一行。

这在浏览器控制台中:

获取用户数据时出错:错误:“通过“凭据”属性提供给 initializeApp() 的凭据实现无法获取有效的 Google OAuth2 访问令牌,并出现以下错误:“无法解析访问令牌响应:错误:发出请求时出错: XHR 错误。错误代码:未定义“。”

我错过了什么?

1个回答

Firebase Admin SDK 不适用于 Javascript,这里有先决条件:https : //firebase.google.com/docs/admin/setup#prerequisites

因此,例如,出于安全原因,您不能在网页中以管理员身份操作,而只能在特权环境(如服务器)中操作。

我正在为我的项目创建一个 Web 管理界面,其中管理操作在 Cloud Functions 中执行。