当前位置:  开发笔记 > 编程语言 > 正文

Spring Security:注销时为404

如何解决《SpringSecurity:注销时为404》经验,为你挑选了2个好方法。

当我尝试访问我的spring应用程序的注销URL时,我收到404错误并No mapping found for HTTP Request with URI [/logout] in DispatcherServlet with name 'mvc-dispatcher'在我的服务器日志中.

我已经尝试过调用j_spring_security_logout无法正常工作,Spring安全注销问题以及SO上的所有相关结果.

我包含了完整的配置文件,因为我还不太清楚Spring xml结构.

我的安全配置:



    

    
        
        
        
        
        
    

    

    
        
    


我的web.xml是这样的:



    XYZ

    
        contextConfigLocation
        /WEB-INF/spring/*-config.xml
    

    
        org.springframework.web.context.ContextLoaderListener
    

    
        springSecurityFilterChain
        org.springframework.web.filter.DelegatingFilterProxy
    

    
        springSecurityFilterChain
        /*
    

    
        mvc-dispatcher
        org.springframework.web.servlet.DispatcherServlet
        1
    

    
        mvc-dispatcher
        /
    

如何使注销页面正常工作?



1> Rob Winch..:

如果您使用CSRF注销,则必须执行POST.请参阅http://docs.spring.io/spring-security/site/docs/current/reference/htmlsingle/#csrf-logout


请注意,使用spring的``标签会自动为您自动添加`_csrf`隐藏标记.

2> Tom Saleeba..:

从Spring 3.2迁移到4后我遇到了同样的问题,但是我想使用视图上的链接注销.

Spring doco(http://docs.spring.io/spring-security/site/docs/current/reference/htmlsingle/#csrf-include-csrf-token-form)解释了如何在视图中执行此操作.

我在JSP中使用此片段进行注销:

<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>

    

推荐阅读
雯颜哥_135
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有