Github API通过curl和浏览器返回不同的限制

时间:2014-02-10 21:38:21

标签: php curl github-api

我在远程服务器上运行了一个php脚本。该脚本会卷曲以下URL

https://api.github.com/rate_limit?client_id=XXXXX&client_secret=XXXXX

返回:

{"resources":{"core":{"limit":5000,"remaining":0,"reset":1392070288},"search":{"limit":30,"remaining":30,"reset":1392068042}},"rate":{"limit":5000,"remaining":0,"reset":1392070288}}

但是,如果我抓住相同的网址并将其放入浏览器,我就会

 {"resources": {"core": {"limit": 5000, "remaining": 5000, "reset": 1392071456 }, "search": { "limit": 30, "remaining": 30, "reset": 1392067916 } }, "rate": { "limit": 5000, "remaining": 5000, "reset": 1392071456 } } 

请注意,“剩余”条目从0变为5000.任何想法为什么会发生这种情况?我认为后者是正确的,因为没有理由我没有api电话。

1 个答案:

答案 0 :(得分:0)

API检查User-Agent字符串。他们使用它来计算(在某种程度上)和您的IP地址对剩余核心资源的请求数。该请求结果中的重置值告诉您何时(自Epoch以来的秒数)您将能够开始请求更多资源。您应该能够根据在脚本中生成的值来检查该值。