Corredorスマートフォン用の表示で見るCorredorウェブ、プログラミングの勉強メモ。アクセスできるようにしたいと思った。あるログイン処理とセッション管理をサーバサイドで行いたい、ということだ。いうライブラリを使うのがよくあるやり方みたいなので、試してみた。詰まるところがあったので、困ったところのまとめを中心にメモ。環境を作るには、以下のモジュール群をインストールする必要があった。メイン処理として実装した。呼び出しておくだけみたい。事項を埋めていく形で実装していく。よる認証ロジックを実装する。指定の固定値と合致すれば認証成功と見なす。(実際は失敗時のハンドリングがもう少しできるが)。関数で定義しておく必要がある。それぞれの関数はお決まりの書き方なのでこのまま。シリアライズ・デシリアライズについて。いうクッキーが保存される。コメント部分に該当する、ログイン用のルーティングを定義する。ログインするためのルーティング自体には、認証せずともアクセスできなくてはならない。そのルーティングにアクセスすることで、先程実装した認証ロジックを呼び出すように実装する。通信してきた時のルーティングとして実装する。しているように、セッションを有効にしている。この辺はなんか受け売りで実装している。定義した認証ロジックで認証が成功した場合のみ辿り着く。認証に失敗した場合は呼ばれないことに留意。コメント部分に該当するルーティングを実装する。定義する、ということだ。今回はダミーで固定値を返す。いう自前の関数を用意した。いう関数によって、認証済みかどうかを検証している。提供しているようで、シリアライズされたセッションデータと合致するクライアントからのリクエストかどうかを検証しているようだ。仕込んで、実際にアクセスした時にどのような順番で関数が動いているか確認した方が分かりやすい。ような認証用の関数は仕込まない。コレでサーバ側のセッションでシリアライズされていたデータが消去できる。以上で、サーバサイドの実装は完了だ。通信するとログアウトできるという仕様で実装が完了した。アプリからどうやってアクセスするかをまとめる。プロジェクト雛形をサクッと作った直後の状態から説明する。今回は簡単のため画面遷移を行わず、ログインフォームからログイン認証ができたらメッセージを表示する作りにしようと思う。通信するボタンはずっと表示されているが、先にログインできていないと押しても動作しない作りだ。