明确提到,通过仅应用程序授权分配的搜索/tweet请求数为450/15分钟。我正在使用twitter4j 4.0.1版本,但是,我只有180个请求/15分钟通过应用程序授权。
我试着用下面的代码得到极限,我得到的极限是450。但是,在180次请求后,我得到速率限制超过错误。
twitter.getRateLimitStatus().get("/search/tweets").getLimit();
我哪里做错了?
public static OAuth2Token getOAuth2Token(String key, String sec) {
OAuth2Token token = null;
ConfigurationBuilder cb;
cb = new ConfigurationBuilder();
cb.setApplicationOnlyAuthEnabled(true);
cb.setOAuthConsumerKey(key).setOAuthConsumerSecret(sec);
try
{
token = new TwitterFactory(cb.build()).getInstance().getOAuth2Token();
}
catch (Exception e)
{
System.out.println("Could not get OAuth2 token");
e.printStackTrace();
System.exit(0);
}
return token;
}
public TwitterManager() throws TwitterException {
OAuth2Token token;
token = getOAuth2Token("XXXX","XXXX");
ConfigurationBuilder cb = new ConfigurationBuilder();
cb.setApplicationOnlyAuthEnabled(true);
cb.setOAuthConsumerKey("XXXX");
cb.setOAuthConsumerSecret("XXXX");
cb.setOAuth2TokenType(token.getTokenType());
cb.setOAuth2AccessToken(token.getAccessToken());
twitter = new TwitterFactory(cb.build()).getInstance();
}
你能分享更多的代码吗?
从结果来看,我怀疑您不是只使用应用程序,但可能使用了另一个验证流?