###やりたいこと
https://~/auth/twitter と入力するとRouting Errorが出てしまう。
Routing Error No route matches [GET] "/auth/twitter" Rails.root: /home/ec2-user/environment/gamesnap
TwitterAPIを利用して、Twitterアカウントでログインする機能を追加したい。
###環境
ruby :2.6.3
ruby on rails :5.0.7.2
omniauth :2.0.4
omniauth-twitter :1.4.0
dotenv-rails :2.7.6
rack_session_access :0.2.0
cloud9
###コード
routes.rb
Rails.application.routes.draw do get 'posts/index' => "posts#index" get 'posts/new' => "posts#new" get '/auth/twitter/callback' => 'sessions#create' get '/logout' => 'sessions#destroy' post "posts/create" => "posts#create" post "posts/:id/destroy" => "posts#destroy" get "posts/like" => "posts#like" get '/' => "posts#index" root 'posts#index' #get "posts/:id" => "posts#index" # For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html end
###行ったこと
以下のgemを入れ、インストールした。
gem 'dotenv-rails' gem 'omniauth-twitter' gem 'rack_session_access' gem 'omniauth'
config/initializers/omniauth.rbに
Rails.application.config.middleware.use OmniAuth::Builder do provider :twitter, "API_KEY", "API_SECRET" end
を入力した。(API_KEYとAPI_SECRETには、それぞれ発行されたキーを入力済み、developer portalにてcallback urlsとwebsite urlを入力済み、callback urlsには2つのurlを入力。)
その後、https://~/auth/twitterと入力したところ、エラーが発生。
私の認識として、
/auth/twitter
↓
Twitter認識画面
↓
/auth/twitter/callback
となり、callbackの部分でエラーが起こる(まだ、どう動かすのか書いていないため)と思っていたのですが、認証画面に行く前にエラーが出てしまいました。(実装方法が載っているいくつかの記事で認証画面にまではいけると書かれてありました。)
どこが間違っているのでしょうか。
回答1件
あなたの回答
tips
プレビュー