首页 > 解决方案 > 如何通过他的 gmail 获取用户的名字和姓氏?

问题描述

我正在开发一个应用程序来工作 admin.google.com。在我通过 Google_Service_Directory 的应用程序中,我得到了一个用户。但我不明白它是谁 - 我只看到 gmail。我想通过 gmail 获取姓名和姓氏。我该怎么做?

在 Internet 上,我找到了 Google Plus 库的答案。但 Google Plus 即将关闭。还有哪些其他方法可以通过 gmail 获取您的名字和姓氏? 在此处输入图像描述

标签: google-apigoogle-plus

解决方案


你有几个选择,他们会给你类似的信息。

人们获得Google+ api。

要求:

GET https://www.googleapis.com/plus/v1/people/me

回复: people.resource

 "objectType": "person",
 "id": "11720047553265346",
 "displayName": "Linda Lawton",
 "name": {
  "familyName": "Lawton",
  "givenName": "Linda"

注意:此调用出现在 Google+ api 文档中,但该端点并未被关闭。 (等待谷歌的反馈是否关闭。)

用户信息端点

第二个选项是将身份服务器直接调用到 userinfo 端点,如OpenIDConnect中所述,我认为需要配置文件范围

people.get people api

people.get从 people api

要求

GET https://people.googleapis.com/v1/people/me?personfield=names

回复

  "displayName": "Linda Lawton",
  "familyName": "Lawton",
  "givenName": "Linda",
  "displayNameLastFirst": "Lawton, Linda"

无法搜索电子邮件

注意:这将为您提供有关当前登录用户的信息。没有办法直接通过他们的电子邮件地址取回角色的名称。假设您正在运行具有域范围委派的服务帐户,您可能可以使用 people.get 和域中用户之一的用户 ID。我没有试过这个


推荐阅读