AngularFire使用google登录,使用参数

时间:2014-12-17 10:31:45

标签: firebase angularfire firebasesimplelogin

我们使用此代码登录google:

var googleOptions = {
    scope: 'email'
};

$scope.auth.$authWithOAuthPopup("google", googleOptions).then(function(authData) {
    console.log(authData.google.email);

    var userSigninIdentifier = authData.google.id;

    console.log("userSigninIdentifier:" + userSigninIdentifier);

    if ($scope.googleRef.$getRecord(userSigninIdentifier) == null) {
        console.warn("new user, registering...");
        $scope.register(authProvider, authData);
    } else {
        $scope.profileID = $scope.googleRef.$getRecord(userSigninIdentifier).profileID;
        $firebase(ref.child("users").child("signin").child("google").child(userSigninIdentifier)).$update({
            token: authData.token,
            expires: authData.expires,
            AccessToken: authData.google.accessToken
        });
        $firebase(ref.child("users").child("data").child($scope.profileID)).$update({
            displayName: authData.google.displayName,
            email: authData.google.email,
            picture: authData.google.cachedUserProfile.picture
        });
        console.log("Logged in as:", authData.uid);
        $state.go('app.home');
    }
}).catch(function(error) {
    console.error("Authentication failed google:", error);
});

不幸的是,选项不起作用。由于这些选项不起作用,我们无法访问用户的电子邮件地址。我们如何使用AngularFire的$ authWithOAuthPopup方法和参数?

编辑:这个(略有不同的形式)与facebook登录

完美配合

0 个答案:

没有答案