[英]Twitter authentication error “Authentication credentials are missing”
我具有以下代碼,用於在Java中使用Twitter API
import java.io.File;
import java.io.PrintWriter;
import java.util.List;
import twitter4j.Query;
import twitter4j.QueryResult;
import twitter4j.Status;
import twitter4j.Twitter;
import twitter4j.TwitterFactory;
import twitter4j.conf.ConfigurationBuilder;
public class TwitterDataCollector {
public static void main(String[] args) throws Exception {
ConfigurationBuilder cb = new ConfigurationBuilder();
cb.setDebugEnabled(true)
.setOAuthConsumerKey(comsumerKey)
.setOAuthConsumerSecret(consumerSecret)
.setOAuthAccessToken(accesstoken)
.setOAuthAccessTokenSecret(accesstokensecret);
TwitterFactory tf = new TwitterFactory(cb.build());
Twitter twitter = tf.getInstance();
//PrintWriter tweetWriter = null;
twitter = TwitterFactory.getSingleton();
List<Status> statuses = twitter.getHomeTimeline();
System.out.println("Showing home timeline.");
for (Status status : statuses) {
System.out.println(status.getUser().getName() + ":" + status.getText());
}
}
}
我正在嘗試使用使用者密鑰和訪問令牌對Twitter API進行身份驗證,並嘗試訪問我的時間軸,但它正在顯示
Exception in thread "main"
java.lang.IllegalStateException: Authentication credentials are missing. See http://twitter4j.org/en/configuration.html for details
at twitter4j.TwitterBaseImpl.ensureAuthorizationEnabled(TwitterBaseImpl.java:186)
at twitter4j.TwitterImpl.get(TwitterImpl.java:1554)
at twitter4j.TwitterImpl.getHomeTimeline(TwitterImpl.java:105)
at TwitterDataCollector.main(TwitterDataCollector.java:24)
拆除線
twitter = TwitterFactory.getSingleton();
解決您的問題; getInstance()
使用在ConfigurationBuilder
指定的身份驗證詳細信息向您返回Twitter
。
如果要使用getSingleton()
,則需要使用身份驗證詳細信息對ConfigurationContext
進行一些getSingleton()
。 我希望有一些有關如何完成此操作的文檔
另外,我建議不要將您的OAuth密鑰發布到公共網站上
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.