目次
①セッションとは
②ステートフルとステートレス
③セッションメソッドの使い方
①セッションとは
ステートフルな通信を実現するための仕組みのこと
②ステートフルとステートレス
普段閲覧しているWebサイトはクライアントとサーバー間でHTTPという形で通信をしていてデーターのやりとりをしている。HTTPのリクエストとレスポンスの仕組みは簡潔になっていて、クライアントとサーバーの1回のやりとりで処理が完結しますので、サーバーは状態を管理することができていない。この状態がステートレスという。逆に状態を維持する仕組みをステートフルという。ステートレスの状態だと、例えば、ログインをした後に、ページを閉じてしまったら毎回ログインをする必要があるので非常に不便になる。データを一定時間保持したければセッション機能を使う。
③セッションメソッドの使い方
結論としては、sessionにデータを入れるだけ。あとは更新や削除もできる。
◯データの入れ方
session[user_id]= @user.id
◯データの削除の仕方
以下の3パターンがある。
session[user_id]= nil
session[user_id].clear
session.delete(:user_id)