HTTPはステートレス(状態を持たない)
- ステートフルは、やりとりを覚えていること
- ステートレスは、やりとりを毎回リセットするもの
覚えてもらわないとめんどくさい。
初回の接続時、WebサーバーからCookieをクライアントに作成します
2回目以降の接続時、前回作成されたCookieを毎回Webサーバに送信します
Cookieは、ブラウザの検証ツールを使用すると簡単に中身をみることができる
- 大事な情報を保存しない(危ない)盗まれてしまう
- Cookieに保存しないために作られた仕組みがセッション
Cookieに保存しないために作られた仕組みがセッション
アクセスします
セッションIDを生成して、セッションIDに紐づくデータを別に保存します
保存先は、データベースでも、Redis(KVS)、メモリーとかファイルでも構わない 保存先からデータを取り出す鍵の役割をするのが、セッションID(webサーバー側から見れる)
webサーバーからクライアントに戻す(CookieにセッションIDだけ持つよう指示する)(Set-Cookieで渡す)
HTTPレスポンスの中にCookieをセットして返す
Cookieには、セッションIDだけを渡す セッションに保存したデータを格納する