firebase - 是否有可能通过内部功能访问 firebase admin?

标签 firebase google-cloud-functions firebase-admin

我需要通过 访问 firebase admin Firebase 函数 .我有一个通过 HTTP 触发器调用的函数,它将创建自定义身份验证 token 。

Firebase admin documentation ,他们说你需要引用JSON包含所有 key 的文件 ( serviceAccount )

var serviceAccount = require("path/to/serviceAccountKey.json");

admin.initializeApp({
  credential: admin.credential.cert(serviceAccount),
  databaseURL: "https://<databaseName>.firebaseio.com"
})

由于我已经在自己的 Firebase 函数中,我需要上传这些 key 还是可以通过任何其他方式访问它?

将我所有的管理 key 上传到 Firebase 存储只是为了类型转换新 token 感觉非常不必要......

最佳答案

您可以使用 functions.config().firebase 获取 Firebase 配置实例,然后将其直接传递给 initializeApp() Admin SDK 的方法:

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

// Pass the Firebase config directly to initializeApp() to auto-configure
// the Admin Node.js SDK.
admin.initializeApp(functions.config().firebase);


来自 use environment configuration to initialize a module documentation :

When you deploy functions using the Firebase CLI, functions.config().firebase is auto-populated with configuration needed to initialize the firebase-admin SDK.

So you can put this in your code:

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


已经注意到functions.config()仅在 Cloud Functions 托管环境中可用,因此 not available when emulating functions locally .作为解决方法,您可以导出 functions.config().runtimeconfig.json通过在您的函数目录中运行以下命令:

firebase functions:config:get > .runtimeconfig.json

关于firebase - 是否有可能通过内部功能访问 firebase admin?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47134595/

相关文章:

node.js - Firebase 凭据错误

javascript - 登录后 Firebase 慢重定向?

android - Firebase 云消息传递 : best practice

javascript - 从 Google Cloud Function 检查 Google Speech API 操作

javascript - 云Firestore : How to select where value not in array

node.js - 即使文档有几个字段,也无法获取 firestore 文档字段数据

android - 使用 Android Firebase Analytics SDK 时有时会丢失事件参数

javascript - 如何在 https 云功能中检查身份验证?

firebase - Google Cloud Functions Cron 作业不起作用

javascript - 我的代码中的云功能错误或错误 : www. googleapis.com 网络超时。请再试一次