当前位置:  开发笔记 > 编程语言 > 正文

firebase admin SDK创建用户并发送验证邮件

如何解决《firebaseadminSDK创建用户并发送验证邮件》经验,为你挑选了1个好方法。

在使用firebase admin SDK创建用户后,如何发送验证电子邮件?我想要结合起来createUser function,sendEmailVerification function 有人可以指出一个暗示或答案吗?谢谢

更新:

用户创建由已在应用程序中登录的管理员用户完成,因此管理员用户只是在仪表板上创建用户.这与注册方法完全不同.

更新2:

我试图按照bojeil的回答,我仍然坚持用户使用自定义令牌登录的步骤.它与我当前的管理员用户会话发生冲突,管理员用户被踢出,而新用户已登录,即使我退出新用户,管理员用户仍然不在,需要登录才能重新登录该应用程序.

获取自定义令牌后,这是我在应用程序中的代码:

$http.post('/.custom-token', {uid: $scope.data.data.uid})
        .then(function (response) {
            console.log("custom token here:", response.data.token);
            firebase.auth().signInWithCustomToken(response.data.token)
                .then(function (firebaseUser) {
                    firebaseUser.sendEmailVerification();
                    firebase.auth().signOut().then(function() {
                        // Sign-out successful.
                        console.log("signed out success");
                    }, function(error) {
                        // An error happened.
                    });
                })

                .catch(function(error) {
                    // Handle Errors here.
                    var errorCode = error.code;
                    var errorMessage = error.message;
                    // ...
                });

        });

所以,我获得令牌,登录新用户,发送电子邮件验证链接,然后注销新用户.但我正在执行此操作的管理员用户也会退出.我在这里想念的是什么?



1> bojeil..:

好的,这是你可以做的,但你可能会达到配额限制:

包括firebase-admin模块.

包括firebase客户端模块.

使用admin sdk,通过createUser创建新用户

当该承诺解决时,获取创建的用户的uid.

使用admin sdk,为该uid创建自定义标记.

使用客户端sdk,使用该自定义令牌signInWithCustom令牌.

在此过程中返回一个用户,调用user.sendEmailVerification()

signOut来自客户端SDK的用户.

推荐阅读
oDavid_仔o_880
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有