我正试图了解如何查询Twitter速率限制api
[/1.1/application/rate_limit_status.json][1]
curl https://api.twitter.com/1.1/application/rate_limit_status.json
我明白了
{"errors":[{"message":"Bad Authentication data","code":215}]}
现在我知道它需要身份验证数据,但如何在 get 请求中传递它。
我的假设是header
(我必须传递身份验证数据)但问题是什么格式?
任何线索?
答案 0 :(得分:0)
Twitter API要求您使用OAuth对其进行身份验证。 curl
命令行工具不直接支持这种形式的身份验证 - 虽然it is possible to negotiate manually,但它相当复杂,我不推荐它。可能有一个Twitter API库可用于您的编程环境;请改用它!
请注意,速率限制状态特定于请求它的用户或应用程序。它本身没有意义。
答案 1 :(得分:0)
curl命令看起来像这样,其中XXX将由你输入,YYY将自动生成:
curl --get 'https://api.twitter.com/1.1/application/rate_limit_status.json' --header 'Authorization: OAuth oauth_consumer_key="XXX", oauth_nonce="YYY", oauth_signature="YYY", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1402837400", oauth_token="XXX", oauth_version="1.0"' --verbose
您可以使用以下工具预演这一代: http://oauth.googlecode.com/svn/code/javascript/example/signature.html
您还可以下载twitter的twurl工具,这将比直接使用curl更容易。 http://thechangelog.com/twurl-oauth-enabled-curl-for-the-twitter-api/