spring 会话的数据库中的 Cookie SESSION= 和 session_id 有什么区别
Whats the difference between Cookie SESSION= and session_id in database for spring session
我正在使用 spring 会话和 JDBC postgres 进行会话管理。每当创建新会话时,spring 都会创建它并在 cookie 参数 SESSION
中将 sessionid
发送回浏览器,浏览器会为每个后续请求发送回它,一切正常。但是 postgres table spring_session
中 session_id 中的值与最初在 cookie 中发回的 SESSION
不同。这是预期的行为吗?
是的,这是预期的。
从 Spring Session 2.0 开始,DefaultCookieSerializer
默认使用 Base64 编码。因此,您实际看到的会话 cookie 值是 Base64 编码的会话 ID。
如果您希望恢复以前的 (Spring 会话 1.x) 默认值,您可以显式配置 DefaultCookieSerializer
bean useBase64Encoding
属性 设置为false
.
我正在使用 spring 会话和 JDBC postgres 进行会话管理。每当创建新会话时,spring 都会创建它并在 cookie 参数 SESSION
中将 sessionid
发送回浏览器,浏览器会为每个后续请求发送回它,一切正常。但是 postgres table spring_session
中 session_id 中的值与最初在 cookie 中发回的 SESSION
不同。这是预期的行为吗?
是的,这是预期的。
从 Spring Session 2.0 开始,DefaultCookieSerializer
默认使用 Base64 编码。因此,您实际看到的会话 cookie 值是 Base64 编码的会话 ID。
如果您希望恢复以前的 (Spring 会话 1.x) 默认值,您可以显式配置 DefaultCookieSerializer
bean useBase64Encoding
属性 设置为false
.