2013-05-30 2 views
1

입니다. 그러나 동일한 구성 파일은이를 보여줍니다 내가 System.out.println(twitterStreamClient.getOAuthAccessToken().getTokenSecret());를 인쇄 할 때 내가401 twitterstream을 만들 때 오류가 발생했습니다. 구성에서 소비자 키, 비밀 키를 추가 했는데도 401 오류가 발생하더라도

[Twitter Stream consumer-1[Establishing connection]] INFO - 401:Authentication credentials (https://dev.twitter.com/pages/auth) were missing or incorrect. Ensure that you have set valid consumer key/secret, access token/secret, and the system clock is in sync. 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 
<title>Error 401 Unauthorized</title> 
</head> 
<body> 
<h2>HTTP ERROR: 401</h2> 
<p>Problem accessing '/1.1/statuses/filter.json'. Reason: 
<pre> Unauthorized</pre> 

</body> 
</html> 

로 오류가 발생했습니다 다음

TwitterFactory twitterFactory = new TwitterFactory(configuration); 
Twitter twitterClient = twitterFactory.getInstance(); 

좋은 일이지만

TwitterStreamFactory twitterStreamFactory = new TwitterStreamFactory(configuration); 
TwitterStream twitterStreamClient = twitterStreamFactory.getInstance(); 
FilterQuery filterQuery = new FilterQuery(followersId); 
    twitterStreamClient.addListener(statusListener); 
    twitterStreamClient.filter(filterQuery); 

작동하지 않습니다 accesstoken 비밀 값. 나는 이것과 혼동한다. 누구든지 나를 도울 수 있습니까?

답변

1

twitter4j.properties에 소비자 키/암호 및 acces token/secret를 넣고 프로젝트의 src 패키지에 저장해야합니다.

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

당신은 라이브러리에 lib 디렉토리/twitter4j 스트림-3.0.3.jar를 추가 한 이후 쓰기?

1

나는 하나의 트위터 리퍼 독립형 자바 응용 프로그램을 실행하고 Tomcat webapp 내부에서 실행해야했습니다. classpath와 이것 저것으로 고생하고있다. twitter4j.properties not found 나는 명시 적 구성 객체를 제공하기 시작했다.

이제는 Twitter4J, OAuth 및 기타 app 관련 매개 변수를 동일한 myapp.properties 파일 또는 데이터베이스 테이블에 유지 관리하기가 쉽습니다. 여기서는 동일한 설정으로 스트리밍 및 비 스트리밍 트위터 소스 객체를 만듭니다.

ConfigurationBuilder cb = new ConfigurationBuilder(); 
    cb.setDebugEnabled(debug) 
     .setPrettyDebugEnabled(debug) 
     .setHttpConnectionTimeout(15*1000) 
     .setHttpReadTimeout(60*1000) 
     .setIncludeRTsEnabled(config.getBoolean("includeRetweets")) 
     .setIncludeEntitiesEnabled(config.getBoolean("includeEntities")) 
     .setOAuthConsumerKey(config.getProperty("auth.key")) 
     .setOAuthConsumerSecret(config.getProperty("auth.secret")) 
     .setOAuthAccessToken(config.getProperty("auth.token")) 
     .setOAuthAccessTokenSecret(config.getProperty("auth.tokenSecret")); 

    Configuration tfConf = cb.build(); 
    twitter = new TwitterStreamFactory(tfConf).getInstance(); 
    twitterNoStream = new TwitterFactory(tfConf).getInstance(); 
    . . . . . 
    // later once we are done with twitter, call shutdown 
    twitter.shutdown(); 
    twitterNoStream.shutdown(); 
관련 문제