簡體   English   中英

如何在沒有憑據的情況下使用Twitter4J獲取推文?

[英]How to get tweets using Twitter4J without credentials?

我正在使用此鏈接中的示例在Twitter上進行搜索。

這是我的代碼:

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        searchTweets();
    }

    private void searchTweets() {
        Twitter twitter = new TwitterFactory().getInstance();
        try {
            Query query = new Query("android");
            QueryResult result;
            do {
                result = twitter.search(query);
                List<Status> tweets = result.getTweets();
                for (Status tweet : tweets) {
                    System.out.println("@" + tweet.getUser().getScreenName() + " - " + tweet.getText());
                }
            } while ((query = result.nextQuery()) != null);
            System.exit(0);
        } catch (TwitterException te) {
            te.printStackTrace();
            System.out.println("Failed to search tweets: " + te.getMessage());
            System.exit(-1);
        }
    }
}

我使用的是twitter4j-core-3.0.3

我正面臨以下錯誤消息:

Unable to start activity {...MainActivity}: java.lang.IllegalStateException: 
Authentication credentials are missing. See http://twitter4j.org/configuration.html for the detail.

但是,為什么我必須設置一些Twitter憑證來獲取推文?

我的代碼有問題嗎?

謝謝!

自API 1.1起,身份驗證是必需的,正如其文檔所述

在1.1版中,我們要求應用程序使用OAuth 1.0a或僅應用程序身份驗證對其所有請求進行身份驗證。 這種可視性不僅可以防止濫用行為,還可以幫助我們進一步了解應用程序類別如何使用API​​。 隨着我們不斷發展平台,我們將運用這種理解來更好地滿足開發人員的需求。 此時,所有身份驗證都需要用戶上下文,但在接下來的幾周內,我們將推出對不需要用戶上下文的身份驗證形式的支持。

我使用抄寫庫進行身份驗證,使用OAuth協議進行許多類型的api,例如twitter,我希望這些信息可以幫到你。

https://github.com/fernandezpablo85/scribe-java

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM