0

我正在尝试使用 Grails / Spring Security Core 制作登录表单。该请求显然是正确的,但它的行为不像 ajax 登录请求,而是作为常规登录请求处理(IE 重定向到默认登录 url 而不是 ajaxSuccess)。这使得更清楚:

在此处输入图像描述

我的请求应该被重定向到 authAjax,然后到 ajaxSuccess,因为我使用了正确的密码,实际上,如果我刷新网站,我现在已经登录,它只是没有将我重定向到登录控制器上的正确操作。这是我的 authAjax 操作的代码:

def authAjax = {
    session.SPRING_SECURITY_SAVED_REQUEST_KEY = null
    response.setHeader 'Location', SpringSecurityUtils.securityConfig.auth.ajaxLoginFormUrl
    response.sendError HttpServletResponse.SC_UNAUTHORIZED
}
4

1 回答 1

0

我通过将以下行添加到呈现包含 ajax 表单的视图的操作来解决此问题: session.SPRING_SECURITY_SAVED_REQUEST_KEY = null

您可以在以下链接中找到有关解决问题的原因的更多详细信息: Spring Security Core authAjax, How do I ignore the Referer

于 2013-07-18T16:38:23.303 回答