質問: お世話になります。 プロントエンドとバックエンド両分して開発を進めています。 開発中に自分に認識違いがあるかどうか気になりました。一応下記の開発方針を想定していまして。。 **バックエンドでログイン(ログアウト)画面、ユーザ登録(修正)画面を実装し、 プロントエンドはバックエンドの方のログイン画面でログインしたら、リダイレクトされてプロントエンド側に遷移されるつもりであります。 基本的にログインユーザーのセッションをプロントエンド側では意識せずにSPAならではの実装を目指したいと思います。 で、プロントエンドで作業が終わり、ログアウトしたいなら、またバックエンドのログアウト画面にリダイレクトし、実際ログアウトはそこで行われるようにしたいんですが、** つまり、セキュリティー的な面も踏まえて、ユーザ情報絡みは別の専用画面でやりたいわけです。 SPA開発としてはこれで定石ですかね? ログイン→画面操作→ログアウトっていう一連の過程につきましてどう作ればいいか正しいあり方をご教授お願いいたします。
回答: / SPAのURL /login ログイン /logout ログアウト みたいなURL設計にしておいて /にアクセスがあってログインしてなければ /loginへリダイレクト ログインが成功したら /に戻る /でログアウトしたければ /logoutへリダイレクトし、ログアウト完了のhtmlを出す という流れにしたいということですかね。 おかしくないと思いますよ。 ドメイン分けるのもありです。 www.example.com/ コンテンツ auth.example.com/authenticate ログイン auth.example.com/logout ログアウト OpenId認証やOAuthのように認証認可を他のシステムに任せるのもありです。 自前でログインを作るなら同じドメインでも全然問題ないと思います。 他のドメインにログアウトを任せる場合、好みもありますが、ログアウトしたらきちんと自サイトに戻ってログアウト画面を出すほうが自分は好きです。 リダイレクトで認証ドメインに一瞬飛ぶのはいいですが、ログアウト画面を出して止まる場合、ドメイン違うとユーザがびっくりします。