我使用grails spring security并希望在注销后将用户重定向到某个网址。到目前为止我发现的是,'logout.afterLogoutUrl'
有一个特殊属性,grails.plugin.springsecurity.logout.postOnly
应该设置为false。所以在我的Config.groovy中我有:
grails.plugin.springsecurity.logout.postOnly = false
logout.afterLogoutUrl = "/"
我的退出按钮如下:
<sec:ifLoggedIn>
<g:remoteLink class="logout buttons" controller="logout"><g:message code="btn.logout"
default="Loading…"/></g:remoteLink>
</sec:ifLoggedIn>
当我点击退出按钮时,会出现以下请求序列:
从最后一个我得到&#39;状态代码:401 Unauthorized&#39;但是用户仍然可以看到我点击退出按钮的页面。 有谁知道如何处理这种情况?非常感谢你!
答案 0 :(得分:5)
我注意到我使用了错误的属性名称来注销网址。我将其名称更改为grails.plugin.springsecurity.logout.afterLogoutUrl
答案 1 :(得分:2)
这可能是因为您的行为是安全的。请为匿名用户提供此功能。为此,请将IS_AUTHENTICATED_ANONYMOUSLY注释添加为: -
@Secured(['IS_AUTHENTICATED_ANONYMOUSLY'])
def yourActionName(){
...
}