2011-08-22 4 views
2

이것은 내가 twitter.getOauthRequestToken(callbackUrl)을 호출하는 동안 얻는 것입니다. 올바른 소비자 키와 소비자 비밀번호를 추가했습니다.twitter4j의 Oauth 문제

401:Authentication credentials (https://dev.twitter.com/docs/auth) were missing or incorrect. Ensure that you have set valid conumer key/secret, access token/secret, and the system clock in in sync. 
<?xml version="1.0" encoding="UTF-8"?> 
<hash> 
    <error>Desktop applications only support the oauth_callback value 'oob'</error> 
    <request>/oauth/request_token</request> 
</hash> 

코드를 여러 번 디버깅하고 위의 호출이 이루어지기 전에 모든 자격 증명을 찾았습니다. twitter4j를 사용했거나 사용하지 않은 사람은 누구나 문제를 나타낼 수 있습니까? 아니면 다른 oauth 라이브러리를 사용해야합니까? 어떤 제안?

답변

2

"데스크톱"앱으로 앱을 등록 하셨을 것입니다. 트위터 응용 프로그램으로 이동하여 응용 프로그램을 삭제하고 새 응용 프로그램을 만들거나 "웹"을 응용 프로그램 유형으로 사용하여 기존 응용 프로그램을 편집하십시오.

Twitter twitter = new TwitterFactory().getInstance(); 
twitter.setOAuthConsumer("yourConsumerKey","yourConsumerSecret"); 

AccessToken aToken = twitter.getOAuthAccessToken(new RequestToken((String) session.getAttribute("token"), (String) session.getAttribute("tokenSecret"))); 
       twitter.setOAuthAccessToken(aToken); 
+0

내 앱을 https://dev.twitter.com/apps/new에 등록하고 웹 앱으로 등록했습니다. – Shwetanka

+5

등록 페이지에 콜백 URL이 필요하거나 [전화 번호부]로 기본 설정되어있는 [등록에 특질] (http://groups.google.com/group/twitter-development-talk/browse_thread/thread/0f744fe83fd9ef90)이 있습니다. 데스크톱 앱. –

+0

@Nischal, 비슷한 질문이 있습니다. http://stackoverflow.com/questions/15326040/twitter4j-getting-inconcistent-authentication-errors, 생각 해보길 바래요. – user1172468

2

이보십시오. 콜백 URL 필드를 채워야 할 수도 있습니다.

+0

완벽한 솔루션, 정말 고마워요. –

9

내가 같은 문제를 가지고,하지만 난 콜백 URL의 필드를 채울 때 내 응용 프로그램이 정상적으로 실행 :

Twitter twitter = new TwitterFactory().getInstance(); 
twitter.setOAuthConsumer("yourConsumerKey","yourConsumerSecret"); 
RequestToken requestToken = twitter.getOAuthRequestToken(); 

session.setAttribute("token", requestToken.getToken()); 
session.setAttribute("tokenSecret", requestToken.getTokenSecret()); 

// REDIRECT USER TO TWITTER LOGIN PAGE 

response.sendRedirect(requestToken.getAuthorizationURL()); 

콜백 URL 페이지 코드 :