質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Q&A

解決済

1回答

398閲覧

devise_token_authとauth_modulesをを使用したログイン機能でログインできない

takuya_nendo

総合スコア37

Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

0グッド

0クリップ

投稿2022/06/20 09:07

実現したいこと

devise_token_authとauth_modulesを使用したログイン機能の実装

発生している問題・エラーメッセージ

ログイン実行時にエラーは出ていないのですが、ログイン状態になりません。
※ログイン状態=this.$auth.loggedInがtrue

該当のソースコード

signin.vue

nuxt

1<template> 2 <div> 3 <h2>ログイン</h2> 4 <form> 5 <div> 6 <label>企業ID</label> 7 <input v-model="agent_companies_id" type="text" placeholder="企業ID" /> 8 </div> 9 <div> 10 <label>ユーザーID</label> 11 <input v-model="email" type="text" placeholder="ユーザーID" /> 12 </div> 13 <div> 14 <label>パスワード</label> 15 <input v-model="password" type="password" placeholder="パスワード" /> 16 </div> 17 <div> 18 <button type="submit" @click="login"> 19 ログイン 20 </button> 21 </div> 22 </form> 23 </div> 24</template> 25 26<script> 27export default { 28 data() { 29 return { 30 agent_companies_id: '', 31 email: '', 32 password: '', 33 error: null 34 } 35 }, 36 methods: { 37 async login() { 38 await this.$auth.loginWith('local', { 39 data: { 40 agent_companies_id: this.agent_companies_id, 41 email: this.email, 42 password: this.password 43 } 44 }) 45 this.$router.push('/').then((error) => { 46 this.error = error.response.data.errors 47 console.log(this.error) // eslint-disable-line no-console 48 }) 49 } 50 } 51} 52</script> 53

application_controller.rb

rails

1class ApplicationController < ActionController::API 2 include DeviseTokenAuth::Concerns::SetUserByToken 3 skip_before_action :verify_authenticity_token, raise: false 4 before_action :configure_permitted_parameters, if: :devise_controller? 5 6 def configure_permitted_parameters 7 devise_parameter_sanitizer.permit(:sign_up, keys: [:agent_companies_id, :last_name, :first_name, :last_name_syllabic_characters, :first_name_syllabic_characters, :email, :password]) #新規登録時に許可するパラメーターの指定 8 devise_parameter_sanitizer.permit(:sign_in, keys: [:agent_companies_id, :email, :password]) #ログイン時に許可するパラメーターの指定 9 end 10end

ログイン実行時のターミナルログ

Started POST "/api/v1/auth/sign_in" for 172.22.0.1 at 2022-06-20 16:58:58 +0900 (10.8ms) SET NAMES utf8mb4, @@SESSION.sql_mode = CONCAT(CONCAT(@@sql_mode, ',STRICT_ALL_TABLES'), ',NO_AUTO_VALUE_ON_ZERO'), @@SESSION.sql_auto_is_null = 0, @@SESSION.wait_timeout = 2147483 (2.1ms) SELECT `schema_migrations`.`version` FROM `schema_migrations` ORDER BY `schema_migrations`.`version` ASC Processing by Api::V1::Auth::SessionsController#create as HTML Parameters: {"email"=>"test@mail.com", "password"=>"[FILTERED]", "session"=>{"email"=>"test@mail.com", "password"=>"[FILTERED]"}} Unpermitted parameter: :session Unpermitted parameter: :session Agent Load (4.6ms) SELECT `agents`.* FROM `agents` WHERE (BINARY email = 'test@mail.com' AND provider= 'email') ORDER BY `agents`.`id` ASC LIMIT 1 Unpermitted parameter: :session Unpermitted parameter: :session (1.1ms) BEGIN Agent Update (2.1ms) UPDATE `agents` SET `agents`.`tokens` = '{\"srMiUzRPZYyb77CBatBvng\":{\"token\":\"$2a$10$ypSMr5uwyf7bMOAkpETRgOQDeZ.3B7dSuX11ZwHPtvfXc57Q6cUhq\",\"expiry\":1656897253},\"YL9Y0WUCTnQBicgpqeRU7g\":{\"token\":\"$2a$10$v2r7WSrgNhQsqWzwAPCIHuxsBUdVYqeLnb324dDQn1KtLSL7eSMP2\",\"expiry\":1656898847},\"H0-TAV_JuvEuDXdYEXcxkQ\":{\"token\":\"$2a$10$nbVDa1O/bxe6OC6W0YofvuLp2dEmEhw9yAnQNpyvmDg3cz3mR/S6W\",\"expiry\":1656898987},\"HG7g4zCkkds9D-kKQhV2og\":{\"token\":\"$2a$10$L4Ao/hM1KI/8DRmQtcwDR.IPRZt3GmDuaQ/4Nt55eayfXbFiYDzpW\",\"expiry\":1656899686},\"3HCuEMz2RTWEVj-z0N0dfQ\":{\"token\":\"$2a$10$wJbj4m4qWC7B7hItOYqKaOodmuxyUxU6d6wGSb//lQ9iPWHqIWKs6\",\"expiry\":1656900473},\"ct_LN-9ZrBjhNen1vjLPuQ\":{\"token\":\"$2a$10$dxMBGMmGqsIOLGhTbvvYQux08UmiqVVxkI.uzONYGTp42Xcx697D2\",\"expiry\":1656900615},\"2K1XbQrkkLTBb84uW0oRgg\":{\"token\":\"$2a$10$k87Z5.zj4nv3YHbP6reI4u16.sBnAi0IKVeAjw4u.QLqGIqyOWgSi\",\"expiry\":1656900670},\"naMUuRsFtMExCpLPcM6T6g\":{\"token\":\"$2a$10$3xzYTnLqsc2bocspYMyZVuS1NevQwg9RPTos/.FihZD22dtIYbUXq\",\"expiry\":1656921012},\"wGr2AviF5KQnmuF7kn9B2g\":{\"token\":\"$2a$10$WaJd/tHaXb6oNhmqfW3AHeRgemcKtPN.zZfHavSSFhPNnmvKWUHpe\",\"expiry\":1656921366},\"EZ0ueieCxcPmcVV7KfC-MA\":{\"token\":\"$2a$10$jsmSvdnJtt.3y12YgX66pOPXgmzEzDywU/RcJhUw5YVU8VB6fCUJu\",\"expiry\":1656921538}}', `agents`.`updated_at` = '2022-06-20 07:58:58.957874' WHERE `agents`.`id` = 430144037 (6.3ms) COMMIT Agent Load (1.3ms) SELECT `agents`.* FROM `agents` WHERE `agents`.`id` = 430144037 LIMIT 1 Completed 200 OK in 654ms (Views: 0.2ms | ActiveRecord: 26.1ms | Allocations: 31684)

試したこと

  • devise_token_authのsessions_controllerを全てオーバーライドして、pryで止めて処理を確認したが、どこも正常形で処理は完了していた
  • 初期の状態のemailとpasswordのみでログインを実行したが、ターミナルの結果も同じでログイン状態にならなかった

原因がいまいち掴めなかった為どなたかご教示いただけると幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

localStorageのデータが削除できていなかった為、うまくログインできていなかったようです。

投稿2022/06/21 05:21

takuya_nendo

総合スコア37

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問