在Github API中,如何区分用户和组织?

时间:2018-01-15 21:57:49

标签: github github-api github-graphql

使用以下Github网址:https://github.com/google

如何确定google是用户还是组织?

我需要知道以正确的方式查询Github的graphql API。

1 个答案:

答案 0 :(得分:1)

如果您拥有该用户/组的登录名(用户名),则可以使用organization& user分别搜索组织&用户并检查两个字段中的哪一个不是null

{
  org: organization(login: "google") {
    name
    members {
      totalCount
    }
  }
  user: user(login: "google") {
    name
    login
  }
}

给出:

{
  "data": {
    "org": {
      "name": "Google",
      "members": {
        "totalCount": 1677
      }
    },
    "user": null
  }
}

或使用login输入的变量try it in the explorer

对于Rest API v3,它更简单,因为它不区分用户和组织:https://developer.github.com/v3/users

curl -s 'https://api.github.com/users/google' | jq -r '.type'
  

组织

curl -s 'https://api.github.com/users/torvalds' | jq -r '.type'
  

用户