【问题标题】:Get user profile info using Google Contacts access token使用 Google 通讯录访问令牌获取用户个人资料信息
【发布时间】:2016-02-02 14:43:28
【问题描述】:

我试图通过 Google 通讯录访问令牌获取用户个人资料信息,尤其是电子邮件 ID。 我阅读了其他一些帖子,发现我们可以通过 GET 调用使用此 URL 来获取配置文件信息。

https://www.googleapis.com/oauth2/v3/tokeninfo?access_token=XXX

但我得到的回应是

{
 "azp": "client-id.apps.googleusercontent.com",
 "aud": "client-id.apps.googleusercontent.com",
 "scope": "https://www.google.com/m8/feeds",
 "exp": "1454279686",
 "expires_in": "3586",
 "access_type": "offline"
}

如何使用 google 联系人访问令牌获取用户的电子邮件 ID?

【问题讨论】:

  • 我不认为 totkeninfo 总是返回电子邮件。除非它已通过电子邮件或配置文件范围进行身份验证。它应该返回用户 ID,这是 Google 的内部用户 ID。
  • 有没有其他方法可以使用访问令牌获取用户电子邮件 ID。

标签: google-api google-contacts-api


【解决方案1】:

正如@daimto 所述,您需要通过身份验证(通过 oAuth2.0)才能使用联系人 API。幸运的是,它的documentation 详细说明了如何开始。

但是,对于retrieve Contacts,您必须知道email address,因为它是您将传递以检索联系信息的参数(取决于投影(thinproperty-*Key*、@987654327 @)

【讨论】:

  • 是的,我们只会通过 OAuth 2.0 进行身份验证,此时我们没有用户的电子邮件 ID。我们可以使用google.com/m8/feeds/contacts{userEmail}/full url 来检索联系人,但是在这里@adjuremods 我们可以提到“default”来代替 {userEmail},因为我们还发送带有 access_token 的 Authorization 标头。我们在上面的 url 调用中获得了用户的姓名和电子邮件,以及响应中的 25 个联系人。我担心的是,谷歌是否提供带有 access_token 的电子邮件 ID 信息。
  • 上述评论中的小错字,网址为 - google.com/m8/feeds/contacts/{userEmail}/full
猜你喜欢
  • 2021-05-30
  • 2014-04-19
  • 1970-01-01
  • 1970-01-01
  • 2015-05-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多