2016-01-22 34 views
0

我嘗試使用twitter4j向Twitter進行身份驗證時遇到了問題。我試過this,但它仍然無法正常工作。無法使用twitter4j進行身份驗證

這是我的代碼,任何幫助將不勝感激。

謝謝。

public class SpeedDemon { 

/** 
* @param args the command line arguments 
*/ 
public static void main(String[] args) throws TwitterException { 
// Setup for Snake Charmer 

ConfigurationBuilder cb = new ConfigurationBuilder(); 
cb.setDebugEnabled(true) 
     .setOAuthConsumerKey("CONSUMER_KEY") 
     .setOAuthConsumerSecret("CONSUMER_SECRET") 
     .setOAuthAccessToken("OAUTH_ACCESS") 
     .setOAuthAccessTokenSecret("OAUTH_SECRET"); 
TwitterFactory tf = new TwitterFactory(cb.build()); 
Twitter twitter = tf.getInstance(); 

// Gets timeline. 
Twitter twit = TwitterFactory.getSingleton(); 
List<Status> statuses = twit.getHomeTimeline(); 
System.out.println("Showing home timeline."); 
for (Status status : statuses) { 
    System.out.println(status.getUser().getName() + ":" + 
         status.getText()); 
} 

} 

} 

編輯:下面的錯誤發生在編譯:

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:215) 
at twitter4j.TwitterImpl.get(TwitterImpl.java:1784) 
at twitter4j.TwitterImpl.getHomeTimeline(TwitterImpl.java:105) 
at speeddemon.SpeedDemon.main(SpeedDemon.java:30) 
C:\Users\Kevin\AppData\Local\NetBeans\Cache\8.1\executor-snippets\run.xml:53: Java returned: 1 
BUILD FAILED (total time: 0 seconds) 

回答

0

它看起來就像你與你的構建TwitterFactory與辛格爾頓(我懷疑不構建一個Twitter實例兩次,一次一次有認證設置)。

然後,您使用第二個Twitter實例(使用未經身份驗證的工廠創建)來進行查詢。

嘗試使用twitter.getHomeTimeline()而不是twit.getHomeTimeline()

+0

就是這樣!非常感謝! –

相關問題