【问题标题】:GitHub Api: User followers - paging?GitHub Api:用户关注者 - 分页?
【发布时间】:2015-10-04 15:39:59
【问题描述】:

我正在使用一些 Javascript 和 Github API,但遇到了一个问题。

每次,当我尝试调用任何有关注者的用户的关注者时,我从服务器获得的回调只显示 30 个用户。例如:

https://api.github.com/users/vojtajina/followers - 30 位关注者

以及来自原网站的用户关注者:

https://github.com/vojtajina/followers - 1,039 位关注者

我的问题是 - 发生了什么事?服务器的回调中没有“下一页”。如何在回调中获取他/她的所有关注者?

【问题讨论】:

    标签: github github-api


    【解决方案1】:

    每页的最大项目数为 100,因此使用 per_page=100 查询字符串参数会将结果增加到每页有 100 个用户:

    https://api.github.com/users/vojtajina/followers?per_page=100
    

    使用page 查询字符串参数,您可以控制分页。例如,要获取第二页,您应该添加page=2

    https://api.github.com/users/vojtajina/followers?per_page=100&page=2
    

    如果你想获得所有关注者,你必须迭代页面直到收到一个空数组。


    如果你想在 Node.js / JavaScript(在客户端)应用程序中使用它,你可以使用 gh.js——我开发的一个库来处理这个:

    var GitHub = require("gh.js");
    
    var gh = new GitHub({
        token: "an optional token"
    });
    
    gh.get("users/vojtajina/followers", { all: true } function (err, followers) {
        console.log(err || followers); // do something with the followers
    });
    

    【讨论】:

    • 太好了!感谢您的建议。我实际上是在问图书馆。我可以使用这个库进行身份验证,以便我的限制高于 60?
    • @uksz 当然,它支持令牌:github.com/settings/tokens/new 如果您有任何问题/想法/功能请求,请随时打开问题。 :)
    • 你很棒。谢谢你,祝你周日愉快!
    • 很抱歉在这里问你一个问题,但不是在这个问题上(也许它更快?)。令牌似乎不起作用 - 当我检查我还有多少请求时,在我看来请求是 60 个,而不是 5000 个。这是我必须做的唯一步骤,还是还有其他步骤(除了 var gh = new GitHub({token:"an optional token"})?
    • @uksz 嗯,它应该工作。将令牌值 (an optional token) 替换为您的令牌。然后你应该得到更多的请求小时率限制。同样,对于此类问题,未决问题。我尽量回复大家。 :)
    猜你喜欢
    • 1970-01-01
    • 2012-07-20
    • 1970-01-01
    • 1970-01-01
    • 2023-01-17
    • 1970-01-01
    • 2019-07-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多