从Google OAuth获取某些用户的名字和姓氏为空

问题描述 投票:0回答:1

我们的系统使用Google Oauth允许用户从Google帐户注册。但是,对于某些用户,我们只能获取电子邮件和头像,而不能获取名字和姓氏。

[Oauth Google控制台中的设置已添加以下范围

  • 电子邮件
  • 个人资料
  • openid
  • / auth / contacts.readonly

使用以下请求范围

API返回的结果是

{
  "identifier": "1026834XXX",
  "webSiteURL": "",
  "profileURL": "",
  "photoURL": "https:\/\/lh3.googleusercontent.com\/a-\/AAuE7mAZnGB1XXX",
  "displayName": "",
  "description": "",
  "firstName": "",
  "lastName": "",
  "gender": "",
  "language": "",
  "age": "",
  "birthDay": 0,
  "birthMonth": 0,
  "birthYear": 0,
  "email": "[email protected]",
  "emailVerified": "",
  "phone": "",
  "address": null,
  "country": "",
  "region": "",
  "city": null,
  "zip": ""
}

不是每个Gmail帐户都应具有firstName和lastName吗?

google-api google-oauth google-contacts-api
1个回答
0
投票

Google仅返回有关用户的数据,因此,如果用户未填写信息,则api不会返回该信息。同样,某些信息也可以由用户设置为私有,即出生日期,以便api返回用户必须在其个人资料中将其出生日期设置为公开的数据。

我唯一能给您的建议是在您的请求中添加fields = *,这应确保返回谷歌拥有的所有数据。一些Google API限制了响应,如果您需要其他数据,则要求您在调用中使用fields参数。

© www.soinside.com 2019 - 2024. All rights reserved.