Session とは
Play でアプリケーションを開発するときに使えるデータ保存スペース。
複数のHTMLリクエストをまたいでデータを保持したい場合、この Session を使うことで実現することができる。ユーザログイン機能の実装とか、前ページの入力結果を次ページに使いたいときとか。(これはリクエストパラメータでもいいよね)
これの便利なところが、いったんセッションに保存された値はそのユーザの1セッション中は最後まで保持されるという。
使い方を見ていく
Session に値を保存する
以下のようにして値を保存する。
Ok(_____).withSession("key" -> "value")
さらに加えて値を保存したい場合は、追加するように書く。
Ok(_____).withSession(request.session + ("key" -> "value"))
Session から値を取り出す
以下のようにして値を取り出す。
request.session.get("key")
この結果はOption
型になるので、getOrElse
を使うように。