go - 无法通过 github API 获取所有存储库

标签 go github-api

我想允许用户使用 github 帐户注册,并显示他/她的所有私有(private)和公共(public)存储库。我能够从 github 获取 token 并获取存储库(公共(public)和私有(private)),但唯一的问题是它没有返回所有存储库(即未获取某些存储库)。

我正在使用 golang 进行服务器端实现。 使用this获取存储库的方法。

最佳答案

默认情况下,所有接受 ListOptions 参数的命令都有一个 PerPage 属性。为了获取所有数据,您必须使用 Page 属性遍历页面,直到您获得的结果数少于 PerPage

在 Go-ish 伪代码中,它看起来像这样:

totalResults := []Result{}
for page := 0; ; page++ {
  results := fetch current page
  totalResults = append(totalResults, results)
  if len(results) < per page {
    break
  }
} 

您可以看到 ListOptions 结构定义 here .

关于go - 无法通过 github API 获取所有存储库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37946004/

相关文章:

javascript - 如何从 github API 解析链接头

Github 问题 'locked' 事件不会更新问题本身

java - 使用GitHub api和java连接GitHub有什么要求

github - 使用 GitHub API 进行身份验证的问题

用于创建文件的 GitHub API

go - 如何构造 time.Time 与时区偏移

go - 如何测试一个端点?

java - 如何在 go 中使用 java

json - 在 go 模板中加入范围 block

go - 如何根据请求 URL 使用 golang GIN 路由 HTTP 请求