如何使用卫星获取angularjs中经过身份验证的用户的电子邮件

时间:2015-11-04 07:54:10

标签: angularjs authentication satellizer

我正在angularJs中创建一个webapp,并使用satellizer进行身份验证。我可以使用谷歌进行身份验证,但我无法弄清楚如何在我的UI代码中获取经过身份验证的用户的电子邮件ID。我也找不到任何函数来获取documentation中的电子邮件ID。

1 个答案:

答案 0 :(得分:1)

所有我必须做的是,使用access_token satelizer保存在浏览器的本地内存中,然后返回用户信息,点击googleapis,以下是供您参考的服务:

angular.module('MyApp')
    .factory('Google', ['$resource', '$auth', Google]);

function Google($resource, $auth) {
    return $resource("https://www.googleapis.com/oauth2/v1/userinfo?alt=json&access_token=" + $auth.getToken(), {}, {})
}

您只需执行以下操作即可获取登录用户的电子邮件ID:

var googleResponse = Google.get({}, function () {
    var email = googleResponse.email;
});