如何通过GitHub API仅获取已合并的PR?
解决GitHub API获取已合并PR的问题
你当前的请求参数有误,is:merged是GitHub搜索功能的语法,无法直接用于Pulls列表接口的参数中。以下是两种可行的解决方案:
方案一:通过Pulls接口过滤结果
调用Pulls接口时指定state=closed,返回所有已关闭的PR,再通过字段筛选已合并的条目:https://api.github.com/repos/user/repo/pulls?state=closed每个PR对象中,已合并的条目会带有非空的
merged_at字段,未合并仅关闭的PR则没有该字段,据此过滤即可。方案二:使用GitHub搜索API直接获取
利用GitHub搜索API的语法,直接检索目标仓库下已合并的PR:https://api.github.com/search/issues?q=is:pr+is:merged+repo:user/repo注:PR在GitHub的搜索体系中归类为
issues,因此该接口会返回符合条件的已合并PR列表。
需要注意:如果访问私有仓库,请求时需携带有效的认证令牌(如Personal Access Token),同时要留意GitHub API的速率限制规则。
内容的提问来源于stack exchange,提问作者Fill
相关产品推荐
相关产品推荐

