填写表单后,如果会话在中间过期,如果我点击提交,我的页面重定向到登录,输入凭据后,数据会自动保存在数据库中,如何防止这种情况。
我使用了春季安全管理。我在不同的页面面对这个问题。我可以在spring安全文件中进行更改以避免此
任何人都可以帮助我。
提前致谢....
public class AuthenticationSuccessHandlerImpl实现AuthenticationSuccessHandler {
@Resource(name = "sessionRegistry")
private SessionRegistry sessionRegistry;
String redirectUrl = request.getParameter("spring-security-redirect");
if(StringUtils.isEmpty(redirectUrl)){
redirectStrategy.sendRedirect(request, response, "/home");
}else{
redirectStrategy.sendRedirect(request, response, redirectUrl);
}
}
spring-security-redirect的值是request.getHeader(“referer”)
答案 0 :(得分:0)
您可以注册accessDeniedHandler的实现 http://docs.spring.io/spring-security/site/docs/3.0.x/apidocs/org/springframework/security/web/access/AccessDeniedHandler.html
所以它将重定向发送到referer中指定的url。你确定你的代码被调用了吗?似乎spring在这里使用savedRequest,而不是来自referer的url。