0

我正在使用 Twitter4J 库开发 Twitter 的 REST API,特别是在https://api.twitter.com/1.1/search/tweets.json端点上。我很清楚 Twitter 自己的 Streaming API,但我不想使用它(至少现在是这样)。我有一个/search/tweets通过循环查询端点的方法do-while,但我希望该方法的返回以流方式返回,以便我可以同时在控制台中打印结果,而不是一次加载所有内容。这是方法:

public List<Status> readTweets(String inputQuery) {

    List<Status> tweets = new ArrayList<Status>();
    int counter = 0;

    try {
        RateLimitStatus rateLimit = twitter.getRateLimitStatus().get("/search/tweets");
        int limit = rateLimit.getLimit();

        Query query = new Query(inputQuery);
        QueryResult result;

        do {
            result = twitter.search(query);
            tweets.addAll(result.getTweets());
            counter++;
        } while ((query = result.nextQuery()) != null && counter < (limit - 1));
    } catch (TwitterException e) {
        e.printStackTrace();
        System.out.println("Failed to search tweets: " + e.getMessage());
        tweets = null;
    }

    return tweets;
}

你有什么建议?PS 我不想把控制台打印功能放在这个方法里面。

谢谢。

4

0 回答 0