【问题标题】:Getting all GitHub users through github-api通过 github-api 获取所有 GitHub 用户
【发布时间】:2013-04-03 19:29:37
【问题描述】:

GitHub API 文档说 url

https://api.github.com/users

将按照注册顺序给所有用户,但我似乎只得到前 135 个。

任何想法如何获得真正的完整列表?

【问题讨论】:

  • Git != Github, is not the "git api" is the "github api",我会编辑你的问题,但我认为指出差异也是恰当的。

标签: github-api


【解决方案1】:

请在您的 GET 请求中使用since 参数。

https://api.github.com/users?since=XXX

可能这样做是为了限制处理此类请求所需的资源。如果没有这样的限制,它只是要求DoS 攻击。

【讨论】:

    【解决方案2】:

    如果您检查该请求的响应标头,Github 在标头 Links 下提供分页链接

    Link: <https://api.github.com/users?since=135>; rel="next", <https://api.github.com/users{?since}>; rel="first"
    

    我相信自从他们的 api v3 Github 一直在朝着超媒体 api 发展。

    Github Hypermedia API

    编辑

    这超出了这个问题的范围,但它是相关的。了解有关超媒体 API 和 REST 的更多信息。看看 Steve Klabnik 的这些幻灯片

    http://steveklabnik.github.com/hypermedia-presentation/#1

    【讨论】:

      【解决方案3】:

      现有的两个答案都是 100% 正确的,但我建议您对碰巧使用的任何语言都使用包装器。其中有很多,并且有一个用于 ruby​​ 的官方答案(Octokit)。这是所有这些人的list

      【讨论】:

        【解决方案4】:

        您可以像这样过滤type:user

        @987654322@
        

        另见GitHub API get total number of users/organizations

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-09-21
          • 2020-01-12
          • 2020-03-26
          • 1970-01-01
          • 2019-08-28
          • 2015-07-17
          • 2022-08-19
          相关资源
          最近更新 更多