我正在开发一个Java应用程序,它使用GitHub API来下载用户存储库的Zips,但每次执行它时,它都超过了速率限制。如何授权我的Java应用程序每小时达到5000个请求?
答案 0 :(得分:1)
来自https://developer.github.com/v3/
增加OAuth应用程序的未经身份验证的速率限制
如果您的OAuth应用程序需要使用a进行未经身份验证的调用 更高的费率限制,您可以传递您的应用程序的客户端ID和密码 查询字符串的一部分。
curl -i 'https://api.github.com/users/whatever?client_id=xxxx&client_secret=yyyy'
答案 1 :(得分:0)
一旦有OAUTH令牌,有两种方法
- OAuth2令牌(在标头中发送)
醇>curl -H"授权:令牌OAUTH-TOKEN" https://api.github.com OAuth2令牌(作为参数发送)
e.g。卷曲https://api.github.com/rate_limit?access_token=xxxxxxxxxxxxx
获取OAUTH(访问)令牌参考 - https://developer.github.com/v3/oauth_authorizations/#create-a-new-authorization
方法1
使用您的用户ID和密码(用于在网上登录)
curl -X POST https://api.github.com/authorizations -d' {"范围":[" public_repo"],"注意":&# 34;管理脚本"}' -u:
方法2
使用您的应用程序的客户端ID和密码
curl -X POST https://api.github.com/authorizations -d' {"范围":[" public_repo"],"注意":&# 34;管理脚本"," client_id":""," client_secret":""}'
方法3
curl -X PUT https://api.github.com/authorizations/clients/ -d' {"范围":[" public_repo"],"注意":&# 34;管理脚本"," client_secret":""}'
在任何上述调用的响应中,您将获得一个值 "令牌":" abcdefgh12345678",
这是OAUTH或访问令牌。保留此令牌的副本。
您也应该能够使用网络https://github.com/blog/1509-personal-api-tokens
生成令牌由于我们已经获得了只能访问公共仓库的此令牌,因此将其用于获取TPS应该是安全的。