Spring Session中数据库中的Cookie SESSION =和session_id有什么区别

时间:2018-07-25 10:58:55

标签: spring-jdbc spring-session

我正在使用带有JDBC postgres的spring会话进行会话管理。每当创建新会话时,spring都会创建它并使用Cookie参数sessionidSESSION发送回浏览器,然后浏览器将其发送回去,以便后续的每个请求都能正常工作。但是postgres表spring_session中session_id中的值与最初通过cookie发送回的SESSION不同。这是预期的行为吗?

1 个答案:

答案 0 :(得分:0)

是的,这是预期的。

从Spring Session 2.0开始,DefaultCookieSerializer默认使用Base64编码。因此,您实际上看到的会话Cookie值就是Base64编码的会话ID。

如果希望恢复以前的默认设置(Spring Session 1.x),则可以将useBase64Encoding属性设置为DefaultCookieSerializer的{​​{1}} bean进行显式配置。