サーバーサイド

Railsでソーシャルログインを実装する

🐶ソーシャルログインの実装過程を動画にしてみました!

前回までのあらすじ
  • node.jsでGithubの外部認証を実装。
  • 前回はdeviceというプラグインを使って「user」というテーブルを作ってある。

今回は、ログイン機能をdeviceを使ってReilsアプリに実装していきます!

ソーシャルログインの実装(Rails編)その①

RailsにDeviseをインストールする
今回は、前回作った「user」というテーブルに、ソーシャルログインに必要なデータを追加していく。

ターミナル(R-Loginつかってます)を開きデータベースに下記のとおり「カラム」を追加する←これが、「マイグレーションを作るという動作」になる。

 

ソーシャルログイン実装(Rails編)その②

①フェイスブックのデベロッパーサイトに移動し、新しいアプリを追加。
②VSコード開いて、下記のgemファイルを追加。

R-loginを開いて、下記のGemfileに書かれたプラグインをインストールするコマンドを追加。

インストールが完了したらdeviceの設定ファイルを修正していく。
先ほど設定したFacebookアプリの、AppID、AppSecretIDの2つを付け足す。

deviseって何?

Railsの中でメジャーなログイン認証機能のgemのことです!
gemって何?
gemコマンドを使うと簡単に色々インストールできちゃうんです!

へえ。。そうなんだあ(=^・^=) 

ゆうこりんしゃちょーもdeviceを使って、通常のログインの機能は設定されましたよね。
ほんまかいな!( ゚Д゚) 記憶喪失やわ(汗)

 

ソーシャルログイン実装(Rails編)最終回

deviceにメソッドを追加!

①app/model/user.rbのファイルの末尾に下記を追加。

②app/model/user.rbのUserモデルのファイルに下記を記入下記を追加。

コールバック処理の実装
①app/controller以下に、usersフォルダを作成。

②そのusersフォルダの下に、omniauth_callbacks_controller.rbというファイルを作る。

③config/route.rbのdevise_forの後ろに、コールバック用の記述を追記します。

トラブル発生!次回、開発環境をhttps化するぜよ( ゚Д゚)

やり方はこれで問題ないんだけど、httpsにしないとうまく動かないみたい

To Be Continued…

ABOUT ME
ちゅうたん
はじめまして、宇宙鼠のちゅうたんです。ゆうこりんしゃちょーのお手伝いをしてお小遣いもらってます( *´艸`)