因此,经过大量谷歌搜索和阅读 Github API 文档后,我想通了。我需要的是Github Search API。我做的第一件事是找出我的企业 API 上哪些端点可供我使用,如此 stackoverflow 帖子中所述。所以我使用以下命令来做到这一点:
curl -H "Authorization: token [myToken]" "https://github.mydomain.com/api/v3/"
响应中返回的端点之一是:
"issue_search_url": "https://github.mydomain.com/api/v3/search/issues?q={query}{&page,per_page,sort,order}"
使用该端点,我构建了以下命令,满足了我的需求:
curl -H "Authorization: token [myToken]" "https://github.mydomain.com/api/v3/search/issues?page=1&per_page=100&sort=created&order=asc&q=repo:[Owner]/[RepoName]+is:issue+created:>=2015-09-01"
让我们分解参数(在 ? 符号之后的任何内容):
page=1&per_page=100
:此请求的默认结果数为每页 30 个。就我而言,我有 664 个结果。因此,我需要执行多个请求,指定哪个页面(page=1
)以及我想要该请求()的多少结果,per_page=100
直到我得到所有结果。就我而言,每次更改页码时,我都会使用上述网址进行 7 次请求。有关更多信息,请参阅Github 文档上的分页
&sort=created&order=asc
: 按创建日期升序排序(最早的在前)。请参阅Github 搜索 API和搜索问题
q=repo:[Owner]/[RepoName]+is:issue+created:>=2015-09-01
:形成一个搜索查询 ( q=
),将搜索限制为is:issue
从 2015 年 9 月 1 日创建的问题 ( ) 和 ( created:>=2015-09-01
) 在回购所有者/名称 ( repo:[Owner]/[RepoName]
)
希望这对其他人有所帮助,因为我发现 Github api 文档不是很清楚。