java - 如何在进行谷歌登录时获取用户的年龄和位置

标签 java oauth-2.0 google-api google-signin

我正在我的应用程序中集成谷歌登录。我需要存储电子邮件、姓名、年龄范围、位置。因此,在登录时,我将范围设置为个人资料、电子邮件和 profile.auth.agerange.read。

gapi.signin2.render('g-signin2', {
    'scope': 'email profile https://www.googleapis.com/auth/userinfo.profile openid https://www.googleapis.com/auth/userinfo.email https://www.googleapis.com/auth/profile.agerange.read',
    'width': 240,
    'height': 50,
    'longtitle': true,
    'theme': 'dark',
    'onsuccess': onSuccess,
    'onfailure': onFailure
  });

但是当我使用 GoogleIdTokenVerifier 验证生成的 id_token 时,我仍然看不到有效负载中的年龄或位置字段。

任何人都可以建议如何获取这些详细信息。

最佳答案

很可能不会向位置和年龄组提供基本负载。 并且您需要调用额外的 API:

此外,请查看 get-user-info-via-google-api主题。

关于java - 如何在进行谷歌登录时获取用户的年龄和位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56779221/

相关文章:

googleapi : Error 400: Dataset myProject:myDataset is still in use, resourceInUse

java - 我可以通过编程方式创建 Google 帐户吗?

java - 找不到[自定义标签]的标签库描述符

java - CursorAdapter 检索数据时无提示地失败

php - 非 SSL 网站的 OAuth1 或 OAuth2?

javascript - 在 Chrome 扩展中使用 Node.js 和 Express.js

php - 如何从 Google 检索用户的电子邮件

java - 找不到从 HttpRequest : 获取参数值的正确方法

java - 子网实用程序无法解析为类型

azure - 如何使用 Azure 设置符合 OAuth2 标准的身份提供程序