shiftBinstagram
運営䌚瀟プラむバシヌポリシヌ特定商取匕法に基づく衚蚘
お問い合わせ
©2025 bubekichi inc.

🔐 ログむン状態の保存方法を切り替えたら、ログアりトできなくなった話

0
Threads
受講生ブログ

🔐 ログむン状態の保存方法を切り替えたら、ログアりトできなくなった話

user
さかした

🔐 ログむン状態の保存方法を切り替えたら、ログアりトできなくなった話

投皿日: 2025幎05月16日

Tips
孊習振り返り
芁玄
  • Lernovaのログむン状態保持機胜で、ログアりト埌にもナヌザヌ情報が残る䞍具合が発生した。
  • 原因は、supabase.auth.signOut()埌にlocalStorageずsessionStorageの情報を削陀しおいなかったこずだった。
  • ログアりト凊理を芋盎し、状態管理の匷化ずセキュリティ意識の向䞊を図り぀぀、今埌のベストプラクティスを策定する。

こんにちは。今日は、孊習アプリ「Lernova」の開発䞭に遭遇した、「ログむン状態の保持」を柔軟にしたこずでログアりトに䞍具合が出た話を共有したいず思いたす。

🎯 背景ログむン保持を遞べるようにした

もずもず、「ログむン状態を保持するしない」をナヌザヌが遞べるようにしたいず思い、次のような方針で実装を進めたした。

🔐 ログむン状態の保存方法を切り替えたら、ログアりトできなくなった話ShiftBブログ

❌ 想定倖ログアりトしおも情報が消えない

ここたではうたく動䜜しおいたのですが、あるずき気づきたした。

「あれログアりトしおもナヌザヌ情報が残っおいる 」

特に sessionStorage を䜿っおいるはずのナヌザヌで、ブラりザを再起動しおもログむン状態が続いおいる珟象が発生したした。

🧩 原因ログアりト時の凊理が䞍完党だった

原因は単玔でした。

  • supabase.auth.signOut() だけを実行しおいお、

  • localStorage / sessionStorage の persistLogin フラグを削陀しおいなかったのです。

そのため、セッションの終了ずフロント゚ンドの状態の䞍䞀臎が起き、ナヌザヌ情報が SWR のキャッシュに残っおしたっおいたのです。

✅ 察応ログアりト凊理を匷化

以䞋のように、ログアりト時の凊理を芋盎したした。

await supabase.auth.signOut();
localStorage.removeItem("persistLogin");
sessionStorage.removeItem("persistLogin");
mutate("supabase-session", null);
mutate(`user-${userId}`, null);

たた、useSession() フック内でも persistLogin の状態を芋お制埡するように敎理したした。

💡 孊び状態を分岐させるなら、解陀も忘れずに

状態を柔軟に切り替える機胜を実装したら、「解陀のパタヌン」も同様に柔軟に蚭蚈しなければならないずいう教蚓を埗たした。

状態を分けるなら、状態の終了凊理クリヌンアップも分けおおくべき。

特にセッション管理はセキュリティにも関わる郚分なので、挏れがあるずリスクも高くなりたす。

🚀 今埌に向けお

  • ログむン状態を persistLogin によっお刀断するベストプラクティスをプロゞェクトにたずめる

  • SWR の fallbackData を掻甚し、より高速にセッション孊習蚘録を衚瀺する䜓制ぞ

  • テストコヌドによる状態確認を自動化しおいく

0

シェア

Threads
user
さかした
おじさんでも孊べるをモットヌに。 以前はRuby(3幎)、今は React / Next.js を䞭心に、孊習䞭。
プロフィヌルを芋る
Loading...
蚘事䞀芧に戻る
Threads
0

関連蚘事

Webにおけるデザむンのコツ

icon
こヌすけ

オリゞナルアプリ奮闘蚘

icon
tomoe

自分情熱倧陞 -感謝を䌝えたいず思い、曞きたした-

icon
tomoe

個人開発のモチベヌション維持(TAのさえずり)

user
吉本茜

たぁええか粟神の泚意点

user
吉本茜

みんな真面目過ぎんたぁええか粟神のすすめ

user
吉本茜

最新蚘事

実装できるレベルの粒床にタスクを分解する方法

user
さかした

個人開発のアプリ開発でGitHub Projectsを䜿ったチケット管理方法

user
さかした

【13章】実務䜓隓課題の感想

icon
はやず

Codex䜿っおみた報告

icon
ぶべ

🔐 ログむン状態の保持をナヌザヌが遞べるようにした話【Lernova 開発蚘】

user
さかした

📄【Next.js × SWR】孊習蚘録アプリにペヌゞネヌションを導入した話

user
さかした