加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

java – 在Spring Security登录期间添加cookie

发布时间:2020-12-15 01:39:27 所属栏目:大数据 来源:网络整理
导读:我有一个使用Spring Security的Web项目,我试图在处理身份验证成功的方法中保存cookie.但是,当我查看浏览器的cookie时,只显示JSESSIONID,当我在Spring重定向到的servlet上查看request.getCookies()时,会发生相同的情况. 我试图将cookie保存在应用程序的一个se

我有一个使用Spring Security的Web项目,我试图在处理身份验证成功的方法中保存cookie.但是,当我查看浏览器的cookie时,只显示JSESSIONID,当我在Spring重定向到的servlet上查看request.getCookies()时,会发生相同的情况.

我试图将cookie保存在应用程序的一个servlet中,并且cookie保存正确,因此Spring Security可能会清除响应.你有什么主意吗?

一种解决方法是将其保存在Session中,然后获取它并将cookie保存在登录重定向到的servlet上.另一个是使用像this这样的javascript保存cookie.但我不喜欢这些解决方案.提前致谢

这是相关代码:

public class RoleBasedAuthenticationSuccessHandler extends SavedRequestAwareAuthenticationSuccessHandler implements
    AuthenticationSuccessHandler {
    ...
    // save a cookie with the selected language
    Map
最佳答案
您是否在RoleBasedAuthenticationSuccessHandler中调用super之前或之后设置cookie?

 super.onAuthenticationSuccess(request,response,authentication);

您必须在调用super之前设置cookie,因为超类中的逻辑将发送重定向,因此阻止您更新HttpServletResponse的内容.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读