有没有办法使用 GitHub API 或任何外部服务从 GitHub 上的组织中获取所有贡献者?
我正在尝试angular
使用 GitHub API从组织中获取所有贡献者。
我只找到了一种解决方案:
angular
使用此请求从组织获取所有存储库:
GET https://api.github.com/orgs/angular/repos
Run Code Online (Sandbox Code Playgroud)对于每个 repo,通过此请求获取其所有贡献者:
GET https://api.github.com/repos/angular/:repo/contributors
Run Code Online (Sandbox Code Playgroud)它似乎有效,但我认为这个解决方案非常麻烦。我以这种方式发送了大约 300 个请求,它们正在处理大约 20 秒(应用程序将被冻结,直到所有请求都没有完成)。
问题:
这种方法有什么替代方法吗?
不,不是真的 - 我想不出更好的方法来解决这个问题。
github 注册的应用程序可以处理这么多请求吗?我提到,每次应用程序启动时都会发送这 300 个请求。
只要您遵守主要和次要 GitHub API 速率限制,就可以了。
https://developer.github.com/v3/#rate-limiting
https://developer.github.com/guides/best-practices-for-integrators/#dealing-with-abuse-rate-limits
主要限制允许您每小时向每个用户发出 5000 个经过身份验证的请求。如果您开始发出大量并发请求(例如,每秒数百个请求,持续数秒以上),将触发次要限制。所以,如果你需要发出 300 个请求,你应该没问题,只要确保你调低并发。
如果应用程序缓存一些此类信息以便它可以发出条件请求,那就更好了:
https://developer.github.com/v3/#conditional-requests
归档时间: |
|
查看次数: |
1294 次 |
最近记录: |