如何使用github graphQL获取有关特定用户的信息?

jcu*_*bic 3 github graphql

如何使用github GraphQL获取有关特定用户或特定回购的信息?我已经尝试过以下查询:

{
  search (query: "torvalds", type: USER, first: 1){
    edges {
      node {

      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

但是节点的自动完成功能仅显示__typename,它返回字符串“ User”。

演示

hel*_*fer 7

search返回一个SearchResultItem,这是一个接口。为了访问其上的字段,您需要在具体类型上使用一个片段,如下所示:

{
  search (query: "torvalds", type: USER, first: 1){
    edges {
      node {
        ... on User {
          login
        }
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我对GitHub的GraphQL API进行了简短的视频浏览,您可能会发现它很有用:https ://youtu.be/6xO87LlijoQ

编辑:如果您只是在寻找用户或组织并知道确切的名称,@stubailo的答案实际上更好。您仍然需要对大多数字段使用片段,但是您只会得到type的一个结果RepositoryOwner


stu*_*ilo 6

获取有关特定用户的信息的最佳方法是使用repositoryOwner查询,如下所示:

{
  repositoryOwner(login: "stubailo") {
    login
    ... on User {
      bio
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

搜索也不错,但是如果您知道用户或组织的名称,则使用上面的查询会更直接。