为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

Go
慕尼黑的夜晚无繁华 2022-01-17 20:02:12
我想允许用户使用 github 帐户注册,并显示他/她的所有私人和公共存储库。我能够从 github 获取令牌并获取存储库(公共和私有),但唯一的问题是它没有返回所有存储库(即未获取某些存储库)。我正在使用 golang 进行服务器端实现。使用此方法获取存储库。
查看完整描述

2 回答

?
蛊毒传说

TA贡献1895条经验 获得超3个赞

默认情况下,所有接受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定义的结构。


查看完整回答
反对 回复 2022-01-17
?
HUWWW

TA贡献1874条经验 获得超12个赞

正如 robbrit 所指出的,要获取所有存储库,我们必须使用 PerPage 选项,因为默认情况下只返回 30 个存储库。这解决了我的问题。


查看完整回答
反对 回复 2022-01-17
  • 2 回答
  • 0 关注
  • 229 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号