2016-11-24 1 views
1

결코 끝나지 않는 이야기 인 것 같지만 twitter4j stream api에서 Twitter에 액세스 할 수 없습니다.Never Ending Story : 트위터 인증

  1. 나는 트위터 계정을 생성하고 난 Twitter4J 스트리밍 API 4.0.0
  2. I 자바/메이븐에서을 ClientApp 만들어
  3. 트위터에 앱을 만들어 내 고향
  4. 에 시간대를 변경 - 토큰은 액세스 구성 작성기에서
  5. 나는

    ConfigurationBuilder cb = new ConfigurationBuilder(); 
    cb.setDebugEnabled(true); 
    cb.setOAuthConsumerKey("xxxxxxxxxx"); 
    cb.setOAuthConsumerSecret("xxxxxxxxxxx"); 
    cb.setOAuthAccessToken("xxxxxxxxxxxxx"); 
    cb.setOAuthAccessTokenSecret("xxxxxxxxxxxx"); 
    
    TwitterStream twitterStream = new TwitterStreamFactory(cb.build()).getInstance(); 
    
    StatusListnerImpl statusListenerImpl = new StatusListnerImpl(); 
    
    twitterStream.addListener(statusListenerImpl); 
    
    twitterStream.sample(); 
    
  6. 트위터

    에서 예외를 API를-키, 비밀 키와를 얻을으로 배치 된

위의 토큰 키가 작동하지 않습니다! ;-)

401 : 인증 자격 증명 (https://dev.twitter.com/pages/auth)이 누락되었거나 잘못되었습니다. 유효한 소비자 키/암호, 액세스 토큰/암호 및 시스템 시계가 동기화되어 있는지 확인하십시오.

제발 나를 도와주세요. 나는 무엇을 바꾸어야할지 모른다.

내가 프로젝트 이름/자원/twitter4j.properties 내용에서 별도의 파일을 생성하는 것이 좋습니다 cleaness과 단순성을 위해
+0

편집 해 주셔서 감사합니다. 그러나 내가 작성한 자격증 명은이 게시물에만 적용되었습니다. – manuel

답변

0

:

: 그럼 당신은만큼 간단 새로운 TwitterStream 객체를 생성 할 수 있습니다

debug=true 
##Get the following from https://dev.twitter.com/ 
oauth.consumerKey=XXX 
oauth.consumerSecret=XXX 
oauth.accessToken=XXX 
oauth.accessTokenSecret=XXX 

TwitterStream twitterStream = new TwitterStreamFactory().getInstance(); 

컴파일시 속성 파일을 사용할 수 있는지 확인하십시오. 당신이 사용하고 있기 때문에 Maven은 (빌드 섹션에서) pom.xml 파일에 아래의 코드를 추가

 <resources> 
      <resource> 
       <directory>${basedir}/resources</directory> 
      </resource> 
     </resources> 

PS를 : 당신이 당신의 응용 프로그램 특정 키/토큰

응답에 대한
1

감사를 숨길 수 있습니다. 나는 이런 종류의 코드가 매우 깨끗하지 않다는 것을 알고있다. 테스트 용이었습니다.

그러나 키와 토큰의 아웃소싱으로는 문제가 해결되지 않습니다.

http 헤더를 검사 한 후 나는 내 시간과 트위터 시간이 5 분 간격이라는 것을 알고있었습니다.

그럼에도 불구하고 많이 고마워.