3

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

4

1 回答 1

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;
});
于 2015-11-05T01:48:23.290 回答