如何从Probot
检索拉取请求中的所有审阅者?我正在使用typescript
.我也在监听 Probot 中的pull_request
事件类型。我想我需要调用context.github.pullRequests.getReview
来获取审阅者列表,但由于我是NodeJs
和typescript
的新手,我不确定如何调用以下函数。任何输入?
另外,getReview
接受参数{owner:,repo:,number:, review_id:}
,就我而言,我只有pr_number
。
getReview(
params: Github.PullRequestsGetReviewParams,
callback?: Github.Callback<
Github.Response<Github.PullRequestsGetReviewResponse>
>
): Promise<Github.Response<Github.PullRequestsGetReviewResponse>>;
正如我在上面的评论中提到的,对拉取请求的列表评论不会返回评论,而是返回评论请求。
我找不到 REST API 端点,但您可以发送 GraphQL 请求
query {
resource(url:"https://github.com/probot/probot/pull/870") {
... on PullRequest {
title
url
reviews(first: 100) {
nodes {
author {
login
}
}
}
}
}
}
您可以使用context.graphql
方法。有关其 API,请参阅 https://github.com/octokit/graphql.js。确保您使用的是最新版本的 Probot(当前 9.2.4(
,它是使用pullRequests
查询reviewRequests
requestedReviewer
对象。
需要注意的一件事是审阅者可能是User
或Team
因此我们需要利用点差运算符... on User/Team
让他们获得不同的字段。
query {
compass: repository(owner: "YourOrg", name: "YourRepo") {
pullRequests(states: [OPEN], last: 10) {
edges {
node {
title,
updatedAt,
url
mergeable
author {
login
},
reviewRequests(first: 10) {
nodes{
requestedReviewer{
... on User {
userName: name
login
}
... on Team {
teamName: name
}
},
}
}
}
}
}
}
}