2013-08-27 4 views
2

내가 트위터 보석을 통해 트위터 API를 사용하여 이전에 omniauth - 트위터를 통해 권한이 부여 트위터 로그온 한 사용자의/비밀의 OAuth 토큰과 전화를 인증하기 위해 노력하고 있어요 . omniauth-트위터를 통해 트위터 사용자트위터 보석 인증 오류 (사용 omniauth-트위터 토큰/비밀)

인증은 잘 작동된다. 모델에 사용자의 토큰 및 암호를 저장하면 current_twitter_user를 통해 컨트롤러에 데이터를 사용할 수 있습니다.

다음 구성 (응용 프로그램에만 인증)

Twitter.configure do |config| 
    config.consumer_key = YOUR_CONSUMER_KEY 
    config.consumer_secret = YOUR_CONSUMER_SECRET 
    config.oauth_token = YOUR_OAUTH_TOKEN 
    config.oauth_token_secret = YOUR_OAUTH_TOKEN_SECRET 
end 

Twitter.search("something") 

다음 나는 인증 된 사용자의의 oauth_token 및 oauth_token_secret를 사용하고자 노력하고 있습니다. I가 트위터 이니셜을 변경 documentation for the Twitter gem 다음

:

if current_twitter_user 

    tw_client = Twitter::Client.new(
    :oauth_token  => current_twitter_user.token, 
    :oauth_token_secret => current_twitter_user.secret 
) 

    @first_result = tw_client.search("something").results.first.text 

end 

내 문제 :

Twitter.configure do |config| 
    config.consumer_key = YOUR_CONSUMER_KEY 
    config.consumer_secret = YOUR_CONSUMER_SECRET 
end 

은 그럼 테스트 목적으로 다음 코드를 포함하는 조치를 생성 트위터 검색 호출은 "Twitter :: Error :: Unauthorized"예외를 발생시킵니다. current_twitter_user가 제공 한 토큰과 비밀 정보를 확인했는데 문제가없는 것 같습니다.

내가 무엇을 찾고 있어야하는지 또는 내가 잘못하고있는 것일 수도 있습니다. 도움말/아이디어를 매우 높이 평가했습니다.

많은 감사, 사용 오이겐

보석 : 드디어 (수면의 밤 이후) 문제를 확인

oauth (0.4.7) 
omniauth (1.1.4) 
omniauth-oauth (1.0.1) 
omniauth-twitter (0.0.16) 
twitter (4.8.1) 
+0

당신은 항상 자격 증명이 실제로 유효한지 확인 http://api.twitter.com/oauth/request_token하는'POST'ing을 시도 할 수 있습니다 물론 :)의 소비자 정보 DRY를 유지해야합니다. – varatis

+0

많은 감사드립니다 - 나는 그 조치를 취했고 여전히 실패한 것을 발견했습니다. 다행히도 오늘 아침에 모든 매개 변수를 다시 조사 할 때 문제의 최하층에 도달했습니다. 어리석은 나 - 나는 트위터 보석과 omniauth-twitter - aghhhhhh를위한 계정을 뒤섞었다! 세부 정보 게시 – smile2day

답변

0

- 바보 구성 문제!

트위터의 보석은 twitter.rb 이니셜 라이저 파일에서 소비자 키/비밀 쌍을 집어 들었지만 omniauth-twitter는 환경을 통해 쌍을 이루었습니다 (미안하지만,이 중요한 정보는 내 질문에 표시되지 않았습니다. .

나는 트위터 계정을 혼합 소비자 핵심 부분에 두 개의 서로 다른 트위터 애플리케이션을 이용했다. 지저귐과 omniauth-twitter 보석은 다른 응용에 있었다. 이 방법은 작동하지 않으며 인증 실패를 야기합니다. 나는