【问题标题】:Unable to get gender from Google People API无法从 Google People API 获取性别
【发布时间】:2017-11-30 11:58:20
【问题描述】:

我从 People API 获取性别信息时遇到问题。

我正在向https://people.googleapis.com/v1/people/account_id 发出请求,该请求未返回性别字段。如果我将genders 添加到personFields,它会给我Requested entity was not found 错误。

似乎禁止获取此信息。有机会拿到这个领域吗?

【问题讨论】:

  • 用户必须填写并设置为公开。
  • @DalmTo 当然在这两种情况下都是
  • 如果你使用 people/me 而不是 account id 怎么办?
  • 我认为这是不可能的,因为我正在使用这个 API 将用户登录到我的网页。还是我误解了这个 API 的概念?

标签: google-api google-apis-explorer google-people-api


【解决方案1】:

有两种方法可以使用 Google People api。

第一个假设您已使用 Oauth2 对您的用户进行身份验证。

获取https://people.googleapis.com/v1/people/me

返回当前认证用户的信息。

第二个是对 api 的公开调用。您可以使用 API 密钥或 Oauth2。

获取https://people.googleapis.com/v1/people/117200475532672775346

这将返回有关特定用户 {117200475532672775346} 的信息,但这取决于该用户设置为公开的内容。以上数字是我的个人g+账号,以下是性别回复。

"genders": [
    {
      "metadata": {
        "primary": true,
        "source": {
          "type": "PROFILE",
          "id": "117200475532672775346"
        }
      },
      "value": "female",
      "formattedValue": "Female"
    }

我不知道您从哪里获得帐户 ID,这是用户的 google id。这些信息必须在 Google 上填写,我建议您检查用户的 google+ 帐户以查看他们设置为 public https://plus.google.com/u/0/117200475532672775346 的内容。注意:如果这是当前经过身份验证的用户,如果他们没有公开的信息集,您在您的应用程序中看不到它,这并不重要。

提示:假设您只想查看性别,您可以使用 fields 参数来请求

?fields=性别

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-05
    • 2021-07-31
    • 2023-03-26
    相关资源
    最近更新 更多