firebaseAuth GoogleAuthProvider()signInWithRedirect

Yse*_*ran 2 javascript promise angularjs firebase-authentication

我的应用程序中有一个带有重定向的Google身份验证,我想在身份验证完成后重定向.但承诺不起作用

 function loginGoogle() {
        var provider = new firebase.auth.GoogleAuthProvider();
        firebase.auth().signInWithRedirect(provider);
        firebase.auth().getRedirectResult().then(function (result) {
            // This gives you a Google Access Token. You can use it to access the Google API.
            if (result.credential) {
                var token = result.credential.accessToken;
                console.log('token ' + token);
            }
            // The signed-in user info.
            var user = result.user;
            console.log('user ' + user);
            // if success redirect to
            $state.go('maps-fullwidth');

            // ...
        }).catch(function (error) {
            // Handle Errors here.
            var errorCode = error.code;
            console.log(errorCode);
            var errorMessage = error.message;
            // The email of the user's account used.
            console.log(errorMessage);
            var email = error.email;
            console.log(email);
            // The firebase.auth.AuthCredential type that was used.
            var credential = error.credential;
            console.log(credential);
            // ...
        });
    }
Run Code Online (Sandbox Code Playgroud)

谢谢.

小智 8

getRedirectResult()呼叫移出您的loginGoogle()功能.getRedirectResult()应在页面加载时调用.可以在此处找到此实例的示例:

https://github.com/firebase/quickstart-js/blob/master/auth/google-redirect.html