Google仅返回用户的ID和图片

时间:2019-03-14 02:01:55

标签: oauth-2.0 google-oauth

我正在通过oAuth针对Google作为IdP对用户进行身份验证。我一生无法让Google返回ID和图片网址以外的任何内容。我已经请求了正确的字段(通过电子邮件发送family_name,given_name,id),但是我仍然只获得了ID和图片字段。

我在具有以下查询字符串值的get请求中使用“ https://www.googleapis.com/userinfo”端点:

  • 状态
  • access_token
  • 字段(即:电子邮件家庭名称/给定名称ID)

我得到的是唯一ID和用户缩略图的路径,但是我没有得到其他范围项。

获取请求:

  

https://www.googleapis.com/userinfo?state=MyUniqueValue&key=MyAPIKey&fields=email%2Cfamily_name%2Cgiven_name%2Cid&access_token=y26.bigrandomstring

我也尝试过:

  

https://www.googleapis.com/userinfo?state=MyUniqueValue&key=MyAPIKey&fields=email,family_name,given_name,id&access_token=y26.bigrandomstring

我什至尝试过使用formfields弃用的,然后弃用的端点:

  

https://accounts.google.com/o/oauth2/v2/auth?access_token=y26.bigrandomstring&scope=https://www.googleapis.com/auth/plus.me

无论我用什么,每次都还是得到相同的东西:

{
  "id": "1067xxxxxxxx50",
  "picture": "https://lh6.googleusercontent.com/-7RzMk8xmlAg/AAAAAAAAAAI/AAAAAAAAAAA/SfdfsdfsdfYaBtg/photo.jpg"
}

我什至收到“ 200 OK”响应。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

我发现了问题。我使用了错误的端点和范围。正确的端点和范围是:

  

https://people.googleapis.com/v1/people/me?personFields=names,emailAddresses

作为请求的一部分,我具有access_token和密钥(API密钥)的表单域。