GitHub v4 API 查询组织和用户

GitHub v4 API query for both organizations and users

GitHub API v4 在使用 user 查询时不显示公司的结果。如果我改用 repositoryOwner,它会对用户和公司产生 return 的结果。但是,user 查询可以 return 更详细的信息,例如传记、网站、位置等 repositoryOwner 查询中未包含的信息。

是否有覆盖所有类型用户的替代选项?

您可以分别使用 ... on User... on Organization 访问 User or Organization interface in RepositoryOwner :

{
  repositoryOwner(login: "google") {
    ... on User {
      avatarUrl
      bio
    }
    ... on Organization {
      name
      members {
        totalCount
      }
    }
  }
}

Try it in the explorer

如果结果是一个组织,它只会 return 你在 ... on Organization 块中指定的字段,如果结果是一个用户,它会 return 在 ... on User,在这种情况下,google 是一个组织:

{
  "data": {
    "repositoryOwner": {
      "name": "Google",
      "members": {
        "totalCount": 1656
      }
    }
  }
}