# 会话存储
虽然 WebContext 与 HTTP 请求和响应相关,但 SessionStore (opens new window) 是处理 web 会话的抽象。
它有以下方法:
getSessionId
:获取或创建会话标识符,并在必要时使用它初始化会话get
:从会话中获取属性set
:设置会话中的属性destroySession
:销毁基础 web 会话getTrackableSession
:将本地会话作为可跟踪对象(用于后台通道注销)buildFromTrackableSession
:从可跟踪会话构建新的会话存储(用于后台通道注销)renewSession
:通过将所有数据复制到新会话来更新本地会话。;
它的实现因 pac4j 的实现而异。
例如,JEEContext
当前使用依赖 JEE 会话的 JEESessionStore (opens new window)。在 Play 中,我们有一个特定的基于缓存的 PlayCacheSessionStore (opens new window),在 Knox 中也有一个基于 cookie 的 KnoxSessionStore
。
它们通过相应的 SessionStoreFactory (opens new window) 提供。