如何使用Firebase管理员API创建passwordResetLink?

时间:2018-12-24 08:52:33

标签: node.js firebase firebase-authentication google-cloud-functions firebase-admin

我正在尝试自定义Firebase项目中的用户体验,因此也需要创建自定义电子邮件模板,其中包括必要的操作链接。

不幸的是,我无法获得Firebase云功能来创建passwordResetLink。无论我尝试什么,尽管已根据firebase docs进行了设置,但该功能似乎仍然无效。

错误:auth.generatePasswordResetLink不是函数

我也已经尝试重新安装node_modules,但没有成功:(

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

exports = module.exports = functions.https.onCall((data) => {

    const email = data.email
    const actionCodeSettings = {
        url: 'http://localhost:3000',
        handleCodeInApp: false
    };

    auth.generatePasswordResetLink(email, actionCodeSettings)
        .then((link) => {
        // return link
        return { link: link }
    })
        .catch((error) => {
        // Some error occurred.
    });

})

上面的函数应该简单地返回passwordResetLink,以便以后可以使用它来创建自定义电子邮件模板。

1 个答案:

答案 0 :(得分:0)

您似乎正在使用旧版本的firebase-admin。您尝试调用的API已添加到SDK的v6.2.0中。确保您至少具有该版本。