Spring Boot Live Reload在模板和静态文件夹中更改后总是要求输入密码

问题描述

我在Spring Boot应用程序中使用thymeleaf,devtools和spring security

当我在“ / static”或“ / templates”文件夹中进行更改时,浏览器刷新页面(并且我确实看到了更改)。因此,实时重新加载正在工作。

但是又过了2-3秒,它总是将我重定向登录表单,并询问我用户名和密码。

有没有一种方法可以在更改模板后保持会话状态?一直输入用户名和密码会使开发变慢。

解决方法

我终于在处解决了该问题,解决方案非常简单:

我认识到我的日志中有一条信息,指出“无法序列化会话的会话属性SPRING_SECURITY_CONTEXT”。我注意到我在实现UserDetails时使用的“角色”域没有实现Serializable接口。我只需要实现它就可以了。现在,重新加载实时会话后不会破坏该会话,并且用户保持登录状态。