You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过GitHub REST API获取Pull Request中Conversation栏的评论?

搞定GitHub API获取PR「Conversation」评论的问题

先明确GitHub Pull Request里的两类评论:

  • Files changed里的代码行评论:你用GET /repos/{owner}/{repo}/pulls/{pull_number}/comments已经能拿到,这类是针对具体代码行的review评论。
  • Conversation标签下的评论:包含PR的初始描述、直接回复的评论,还有提交review时写的整体评价,得分两种情况获取:

1. 获取普通评论(PR的issue评论)

用GET /repos/{owner}/{repo}/issues/{pull_number}/comments接口就行——因为GitHub的PR本身就是一个issue,PR编号和issue编号完全一致,所以这里的{pull_number}直接填你的PR ID即可。

如果之前调用这个接口没拿到内容,检查这几点:

  • 路径是否完整:必须带上仓库所有者和仓库名称,比如GET /repos/octocat/hello-world/issues/123/comments,不能只写/issues/{id}/comments
  • 权限是否足够:私有仓库必须携带拥有repo权限的GitHub Token,否则会返回403或空数组
  • 评论类型是否匹配:如果Conversation里的评论是review的整体评价,这个接口拿不到,得用下面的接口

2. 获取Review的整体评论

如果是提交review时写的整体评价(不是代码行上的评论),得调用GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews,每个返回的review对象里的body字段就是对应的整体评论内容,这类内容也会显示在Conversation标签下。

凑齐所有Conversation评论的方法

把上面两个接口的结果合并即可:普通评论直接取issues/comments的返回内容,review整体评论从pulls/reviews里提取body非空的条目,两者结合就是Conversation标签下的全部评论。

内容的提问来源于stack exchange,提问作者jean553

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 13:51:05