GitHub APIを使用してGitHubリポジトリのすべての貢献者の数を効率的に取得する方法はありますか?GitHub API:リポジトリごとの寄稿者総数を効率的に取得するには?
すべてのコントリビュータオブジェクトを必ず取得せずに、合計量を手動でカウントする必要はありません。
GitHub APIを使用してGitHubリポジトリのすべての貢献者の数を効率的に取得する方法はありますか?GitHub API:リポジトリごとの寄稿者総数を効率的に取得するには?
すべてのコントリビュータオブジェクトを必ず取得せずに、合計量を手動でカウントする必要はありません。
溶液は、paginationを使用してもよい。
我々はページネーションを使用する場合、我々は(per_page
パラメータを使用して)要求しているどのように多くのアイテムページあたりに応じてページの合計額についてレスポンスヘッダでいくつかの情報を取得します。
だから、トリックは1ページに1つのアイテムで貢献者のリストを要求することができます
https://api.github.com/repos/:owner/:repo/contributors?per_page=1
たちのレスポンスヘッダにこれをやって、以下の内容でLink
プロパティが存在します。
リンク:https://api.github.com/repositories/ID/contributors?per_page=1&page=2; rel = "next"、 https://api.github.com/repositories/ID/contributors?per_page=1&page=XXXXXXXX; relが=「最後の」
XXXXXXXX値は、ちょうどrel="last"
前ページの合計金額となりますが、私たちは1ページに1つのアイテムを要求されているので、それはまた、貢献者の合計金額となります。