環境
ローカル環境でRubyOnRailsを使用しています。
以下、認証に成功するまでにチェックしたポイントです。
1.アクセスしているURLの確認
Twitter側の設定でWebsite項目に127.0.0.1:3000を登録している場合、localhost:3000を指定してアクセスすると認証失敗します。127.0.0.1:3000でアクセスしてください。
2.Callback URLsの設定
Callback URLを設定しない場合、認証に失敗しました。
DeviceとOmniAuthの場合は、devise.rbにcallback_url: "http://127.0.0.1:3000/users/auth/twitter/callback"
を追加してください。
config/initializers/devise.rb
# ==> OmniAuth
# Add a new OmniAuth provider. Check the wiki for more information on setting
# up on your models and hooks.
# config.omniauth :github, 'APP_ID', 'APP_SECRET', scope: 'user,public_repo'
config.omniauth :twitter,ENV['TWITTER_ID'],ENV['TWITTER_SECRET'],callback_url: "http://127.0.0.1:3000/users/auth/twitter/callback"
同じURLをTwitter設定側のCallback URLsに設定します。
3.APP_ID, APP_SECRETが正しいか確認
認証にはConsumer keyとConsumer Secretを使用します。
指定は間違っていないか、スペースなど入っていないか確認しましょう。