1

我正在根据用户传入的存储库的名称通过 API 为多个组织拥有的存储库拉取所有问题和拉取请求。我希望能够显示分配给用户的所有问题/拉取请求以及用户评论的最新问题和拉取请求。

我可以通过提取用户所属的所有存储库的所有问题/PR 来做到这一点,然后进行一些处理以准确找到分配给用户名的所有问题/PR。问题是这不能很好地扩展:如果多个用户在同一时间范围内请求这些数据,我将很快通过 API 速率限制。

我想知道是否有任何方法可以仅为特定用户名获取问题/PR?或者有任何其他方法可以解决这个问题,不需要每次都获取所有回购的所有问题/PR。提前致谢。

4

1 回答 1

1

您可以使用Github Graphql API v4通过单个请求执行此操作。

以下请求将搜索state:open特定用户的特定回购问题以及对此问题发表评论assignee的特定用户:commenter

{
  search(first: 100, type: ISSUE, query: "user:CosmicMind repo:material assignee:danieldahan commenter:danieldahan state:open") {
    issueCount
    pageInfo {
      hasNextPage
      endCursor
    }
    edges {
      node {
        ... on Issue {
          createdAt
          title
          url
        }
      }
    }
  }
}

你可以在资源管理器中测试

于 2017-10-07T01:31:32.153 回答