Получить общедоступный профиль Twitter в java

Я пытаюсь просмотреть общедоступный профиль в Twitter с помощью twitter4J.
Я пробовал примеры на twitter4j git location, но это не сработало.

import java.util.ArrayList;
import java.util.List;

import twitter4j.Paging;
import twitter4j.Status;
import twitter4j.Twitter;
import twitter4j.TwitterException;
import twitter4j.TwitterFactory;
import twitter4j.conf.ConfigurationBuilder;

public class TwitterTimeLine {
public static void main(String[] args) {
    ConfigurationBuilder cb = new ConfigurationBuilder();
    cb.setOAuthConsumerKey("");
    cb.setOAuthConsumerSecret("");
    cb.setOAuthAccessToken("");
    cb.setOAuthAccessTokenSecret("");

    Twitter twitter = new TwitterFactory(cb.build()).getInstance();

    int pageno = 1;
    String user = "google";
    List<Status> statuses = new ArrayList<Status>();

    while (true) {

      try {

        int size = statuses.size(); 
        Paging page = new Paging(pageno++, 100);
        statuses.addAll(twitter.getUserTimeline(user, page));
        if (statuses.size() == size)
          break;
      }
      catch(TwitterException e) {

        e.printStackTrace();
      }
    }

    System.out.println("Total: "+statuses.size());
}
}

Но это всегда дает мне ошибку

400:The request was invalid. An accompanying error message will explain why. This is the status code will be returned during version 1.0 rate limiting(https://dev.twitter.com/pages/rate-limiting). In API v1.1, a request without authentication is considered invalid and you will get this response.
message - Bad Authentication data.
code - 215

Relevant discussions can be found on the Internet at:
    http://www.google.co.jp/search?q=4be80492 or
    http://www.google.co.jp/search?q=0a6306df
TwitterException{exceptionCode=[4be80492-0a6306df], statusCode=400, message=Bad Authentication data., code=215, retryAfter=-1, rateLimitStatus=null, version=4.0.4}
    at twitter4j.HttpClientImpl.handleRequest(HttpClientImpl.java:164)
    at twitter4j.HttpClientBase.request(HttpClientBase.java:57)
    at twitter4j.HttpClientBase.get(HttpClientBase.java:75)
    at twitter4j.TwitterImpl.get(TwitterImpl.java:1786)
    at twitter4j.TwitterImpl.getUserTimeline(TwitterImpl.java:131)
    at com.twitter.ibeat.iBeatTwitter.TwitterTimeLine.main(TwitterTimeLine.java:33)
400:The request was invalid. An accompanying error message will explain why. This is the status code will be returned during version 1.0 rate limiting(https://dev.twitter.com/pages/rate-limiting). In API v1.1, a request without authentication is considered invalid and you will get this response.
message - Bad Authentication data.
code - 215

Не могли бы вы помочь мне заставить это работать.
С уважением, Вирендра Агарвал


person viren    schedule 24.09.2015    source источник
comment
Все методы в Twitter API 1.1 требуют аутентификации через OAuth. Взгляните на stackoverflow.com/questions/17143985/twitter-api- ошибка-215   -  person Balwinder Singh    schedule 24.09.2015
comment
Спасибо @BalwinderSingh, я создал токен OAuth, и он работает. Не могли бы вы рассказать им, как я могу получить твит на сегодняшний день, используя только тот же код. Также мне нужно получить здесь твиты нескольких пользователей, не могли бы вы предложить мне изменения кода.   -  person viren    schedule 24.09.2015


Ответы (1)


Проблема была решена с помощью токена oAuth и API запросов от twitter4J.

person viren    schedule 05.10.2015