gpt4 book ai didi

Firebase 云函数 - createCustomToken

转载 作者:行者123 更新时间:2023-12-02 21:22:08 24 4
gpt4 key购买 nike

结合使用新的 Firebase Cloud Functions 和管理 SDK。

我想使用 admin.auth().createCustomToken() 函数。调用此函数会产生错误消息

Error: createCustomToken() requires a certificate with "private_key" set.
at FirebaseAuthError.Error (native)
at FirebaseAuthError.FirebaseError [as constructor] (/user_code/node_modules/firebase-admin/lib/utils/error.js:25:28)
at new FirebaseAuthError (/user_code/node_modules/firebase-admin/lib/utils/error.js:90:23)
at FirebaseTokenGenerator.createCustomToken (/user_code/node_modules/firebase-admin/lib/auth/token-generator.js:62:19)
at Auth.createCustomToken (/user_code/node_modules/firebase-admin/lib/auth/auth.js:89:37)
at /user_code/index.js:29:26
at process._tickDomainCallback (internal/process/next_tick.js:129:7)

如何配置云函数以使用 private_key?

admin.initializeApp(functions.config().firebase);

最佳答案

不幸的是,createCustomToken()方法需要私钥来创建自定义 token ,目前默认凭证(恰好是 Application Default Credential )不可用。如 Create custom tokens using the Firebase Admin SDKs 中所述,您需要提供证书凭据才能创建自定义 token 。

您可以按照 Add Firebase to your app 中的说明生成此凭据所需的证书。 。获得 key JSON 文件后,您需要将其导入 Cloud Functions for Firebase。

您可以通过将 key JSON 文件存储在 /functions 文件夹中作为 service-account.json 来完成此操作。然后,在定义函数的文件中,使用 admin.credential.cert()初始化 Admin SDK,如下所示:

const functions = require('firebase-functions');
const admin = require('firebase-admin');

var serviceAccount = require("./service-account.json");
admin.initializeApp({
credential: admin.credential.cert(serviceAccount),
databaseURL: functions.config().firebase.databaseURL
});

有关如何执行此操作的完整示例以及更详细的说明和代码示例,请查看 Instagram sign in sample .

请注意,我们希望将来能够通过默认凭据添加对 createCustomToken() 的支持,但目前,您必须携带自己的凭据才能使此特定方法发挥作用。

关于Firebase 云函数 - createCustomToken,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42717540/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com