Rails OAuth::Unauthorized 오류가 발생하면
OAuth::Unauthorized 오류
Rails에서 현재 서비스를 개발하고 있는 홀리카와 입니다.
프로덕션 환경에서 트위터를 통해 로그인하려고하면 위의 오류가 발생했습니다.
원인으로는
①CallbackURL의 설정 실수
②Twitter API key 관련 설정 미스
많다고 생각합니다. (이외에도 많이 있을 것 같다)
해결 방법
제 경우에는 ①이었습니다.
결론을 보면 config/initializers/devise.rb에 설정을 추가하면 해결되었습니다.
config/initializers/devise.rb
config.omniauth :twitter, "twiiter api key", "twitter secret key"
scope: 'email', callback_url: 'example.com/auth/twitter/callback'
↑추가
config/initializers/devise.rb
config.omniauth :twitter, "twiiter api key", "twitter secret key", scope: 'email', callback_url: 'example.com/auth/twitter/callback'
알다시피
이 밖의 에러의 원인으로서, 프로덕션 환경의 경우는
https://
가 아니면 안되는 것 같습니다.또한 twitter dev 앱 설정에서 callback_url이 잘못되었는지
rails routes
에서 확인해 봅시다.user_twitter_omniauth_callback GET|POST /users/auth/twitter/callback(.:format
끝에
OAuth::Unauthorized 는 조사해 본 느낌이라고 몇 가지 요인을 생각할 수 있을 것 같습니다.
이 기사가 해결을 도울 수 있다고 생각합니다.
Reference
이 문제에 관하여(Rails OAuth::Unauthorized 오류가 발생하면), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/jonnyjonnyj1397/items/5a59223b5dcbafeb4e10텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)