注销后grails spring安全重定向

注销后grails spring安全重定向,grails,grails-2.0,grails-plugin,Grails,Grails 2.0,Grails Plugin,我正在使用GrailsSpring安全性,并希望在注销后将用户重定向到某个url。到目前为止,我发现有一个叫做'logout.afterLogoutUrl'的特殊属性,grails.plugin.springsecurity.logout.postOnly应设置为false。因此,在我的Config.groovy中,我有: grails.plugin.springsecurity.logout.postOnly = false logout.afterLogoutUrl = "/" 我的注销按

我正在使用GrailsSpring安全性,并希望在注销后将用户重定向到某个url。到目前为止,我发现有一个叫做
'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&hellip;"/></g:remoteLink>
    </sec:ifLoggedIn>

当我单击注销按钮时,会出现以下请求序列:

  • /注销/索引
  • /j_-spring_-security_-logout
  • /
  • /登录/authAjax
  • 从上一个页面中,我得到了“状态代码:401未经授权”,但用户仍然可以看到我单击注销按钮的页面。
    有人知道如何处理这种情况吗?多谢各位

    这可能是因为您的操作是安全的。请为匿名用户提供此选项。要执行此操作,请通过\u身份验证\u匿名注释,如:-

    @Secured(['IS_AUTHENTICATED_ANONYMOUSLY'])
    def yourActionName(){
        ...
    }
    

    我注意到我在注销url时使用了错误的属性名称。我将其名称改为grails.plugin.springsecurity.logout.afterLogoutUrl