首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Octokit接口

Octokit接口
EN

Stack Overflow用户
提问于 2017-07-11 15:21:09
回答 1查看 576关注 0票数 3

我想得到一个特别的GitHub代表的拉取请求和问题的数量。目前我使用的方法真的很笨拙。

使用octokit gem和以下代码:

代码语言:javascript
复制
# Builds data that is sent to the API
def request_params
  data = { }

  # labels example: "bug,invalid,question"
  data["labels"] = labels.present? ? labels : ""

  # filter example: "assigned" "created" "mentioned" "subscribed" "all"
  data["filter"] = filter

  # state example: "open" "closed" "all"
  data["state"] = state

  return data
end


Octokit.auto_paginate = true
github = Octokit::Client.new(access_token: oauth_token)
github.list_issues("#{user}/#{repository}", request_params).count

接收到的数据非常大,因此在内存方面非常不足。我不需要关于问题的数据,只需要有多少个问题,X个问题(基于过滤器/状态/标签)。

我想了一个解决方案,但没能实现。基本上:做一个请求来获得标题,在标题中应该有一个链接到最后一页。然后再向最后一页发出一个请求,并检查有多少问题。然后我们可以计算:

代码语言:javascript
复制
count = ( number of pages * (issues-per-page - 1) ) + issues-on-last-page

但是我不知道如何从octokit Authentificated客户端获取请求头信息。如果有一种不需要octokit的简单方法,我将很乐意使用它。

注意:我想解决这个问题,因为拉取请求的数量相当高,并且上面的代码在Heroku上生成R14错误。

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-16 13:05:23

我觉得一个简单的方法是使用GitHub接口,并使用per_page过滤器限制您希望在一个页面中显示的PR数量。例如:要找出repo OneGet/oneget的所有PR,您可以使用..https://api.github.com/search/issues?q=repo:OneGet/oneget+type:pr&per_page=1。JSON响应有一个字段"total_count“,它给出了PR总数的计数。而且响应将相对较轻,因为它只列出了一个问题。参考:Search Issues

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45027921

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档