删除用户无效

时间:2014-04-29 08:02:41

标签: javascript firebase angularfire firebase-security

我试图在angularfire项目中删除用户。电子邮件和密码正确传递但由于某种原因,此方法无法执行。这是我的身份验证服务中的代码(我添加了一些解释性注释):

removeUser: function (email, password) {

                console.log(email); --> Correct Email
                console.log(password); --> Correct password

                auth.$removeUser(email, password, function (succes, error) {
                    console.log('in removeUser'); --> Does not print
                    if (!error) {
                        console.log('user deleted'); --> Also doesn't print
                    } else {
                        console.log(error); --> You guessed it, doesn't print
                    }
                });
                console.log('Why am I even here?'); --> Does print
            }

auth变量是正确的,我没有收到任何错误。

这是我获取angularfire引用的方法,其他方法如$ createUser和$ login正常工作:

var ref = new Firebase(FIREBASE_URL);

var auth = $firebaseSimpleLogin(ref);
编辑#2:我注意到resetpassword确实有效,但回调并没有发生。有谁知道为什么?无论我输入错误还是正确的旧密码,它都不会打印任何内容

resetpassword: function (email, oldPassword, newPassword) {
                return auth.$changePassword(email, oldPassword, newPassword, function (error) {
                    console.log('in resetpass auth'); //doesn't print, no errors
                    if (!error) {
                        console.log('Password changed succesfully'); 
                    } else {
                        console.log(error); 
                    }
                });
            }

1 个答案:

答案 0 :(得分:1)

直接使用Firebase Simple Login时,上面引用的方法接受回调作为最终参数。但是,当通过AngularFire使用Firebase + AngularJS时,这些方法被包装为对Angular开发更友好,并返回promises而不是接受回调。

有关详细信息,请参阅https://www.firebase.com/docs/angular/reference.html#changepassword-email-oldpassword-newpassword