0

Twitter4J ライブラリを使用して、検索 API を介して Twitter にアクセスします。このようなクエリを Twitter4j に提供します。

Query{query='#hungergames', lang='null', locale='null', maxId=-1, rpp=100, page=-1, since='null', sinceId=241378725860618240, geocode='null', until='null', resultType='recent', nextPageQuery='null'}

result = twitter.search(query); 

しかし、どの URL が内部で実行されるかはわかりません。 どうすればそれを見つけることができるかについての洞察はありますか?

ここで何かを照会するための URL を形成する方法を Twitter API が文書化していることは知っていますが、Twitter4J が実行した URL を知りたいです。

4

1 に答える 1

1

最も簡単な方法は、おそらくWiresharkなどのツールを使用してネットワーク トラフィックを盗聴することです。

次のコードを使用して、クエリを複製しました。

public static void main(String[] args) throws TwitterException {
    Twitter twitter = new TwitterFactory().getInstance();
    Query query = new Query("#hungergames");
    query.rpp(100);
    query.setSinceId(241378725860618240L);
    query.setResultType(Query.RECENT);
    System.out.println(query);
    QueryResult result = twitter.search(query);
    for (Tweet tweet : result.getTweets()) {
        System.out.println(tweet.getFromUser() + ":" + tweet.getText());
    }
}

クエリを出力する行から次のことがわかります。

Query{query='#hungergames', lang='null', locale='null', maxId=-1, rpp=100, page=-1, since='null', sinceId=241378725860618240, geocode='null' , until='null', resultType='recent'}

ネットワーク トラフィックをスニッフィングしたところ、コードが次の URL を要求していることがわかりました。

http://search.twitter.com/search.json?q=%23hungergames&rpp=100&since_id=241378725860618240&result_type=recent&with_twitter_user_id=true&include_entities=true

于 2012-10-11T01:45:11.533 に答える