我在用户注销时将cookie SPRING_SECURITY_REMEMBER_ME_COOKIE
设置为null。
Cookie cookie = new Cookie(cookieName, null);
String cookiePath = request.getContextPath();
cookie.setPath(cookiePath);
cookie.setMaxAge(0);
response.addCookie(cookie);
上面的代码在我的localhost中工作正常,当我移动到云服务器时,上面的代码不起作用,它不会在注销时删除cookie。除了域转发之外没有区别。
答案 0 :(得分:0)
可能是您的情况,也可能不是,但有关删除JSESSIONID Cookie的类似问题。看看这里:
Remember-Me cookie也可能发生同样的事情。检查' Set-Cookie'退出系统时的标题(Firebug就足够了):如果'路径'与存储的cookie的路径(在访问登录页面时创建)不匹配,那么您的环境可能会出现此问题。在这种情况下,您可以创建自定义CookieClearingLogoutHandler
来正确清理Cookie。