我正在try 从我的Atlas触发器发送Firebase管理员推送通知.
Firebase Admin SDK需要通过文件进行初始化(我找不到任何有关如何以不同方式执行此操作的文档),因此以下是我到目前为止获得的代码:
const admin = require("firebase-admin");
const json_creds = context.values.get("admin_key");
admin.initializeApp({
credential: admin.credential.cert(json_creds)
});
这将引发以下错误:
{"Message":"无法解析服务帐户json文件:FunctionError:找不到文件:{"type":"service_count","project_id":.....}
因此,我从这里了解到,admin.credential.cert()
接受file
而不是String
作为输入,但是在Atlas触发器中,我将值存储为秘密,并将其链接到要从context.values
检索的值.
为了解决我的问题,我有两个不同的问题:
- 如何从
service_account.json
的内容而不是从文件而是从可访问的String
值(例如我可以在Atlas触发器中设置的env var)来初始化Firebase admin SDK? - 或者:如何在Atlas触发器中存储要从
context
中读取的文件?
提前谢谢你了!