リモートワークを便利にするWebアプリRee③~サインイン機能の作成~

前回はユーザーを作成しましたので、それを使ってログインをするところまでやってみます。

User5というユーザーを作っていたので、それでログインしてみます。

ルーティング

routes.rbには以下を追記しておきます。

コード

すでにUserモデルや必要なファイルは前回作っているので、該当箇所のコードだけ貼ります。users_controller.rbに追加します。

ログインはSNSログインなどではなく、メールアドレスとパスワードを使用するものにしています。

簡単に説明すると入力されたメールアドレスでユーザーを検索。ユーザーが存在しなければ、エラーを返す。

次にそのユーザーのパスワードが正しいかを確認。間違っていればエラーを返す。

この2行が問題なく通れば、アクセストークンを生成し、ユーザー情報を返すようになっています。

試しにPostmanでAPIを叩いてみます。

signinapi

すると、ユーザー情報と、アクセスキーも取得できました!これでユーザーに紐づいた情報を取ってくる準備ができました。