Servlets URL中的Spring Security#

Servlets URL中的Spring Security#,servlets,spring-security,Servlets,Spring Security,我目前正在通过SSO解决方案使用Spring Security的预验证,并且URL中的#存在问题。我注意到,如果对#进行URL编码,如果用户未登录,重定向将正常工作,因此我编写了一个过滤器,用于查找URL编码的参数,并对其进行解码。问题是,现在如果您登录,似乎URL正在被解码,而我的过滤器从未被触动过 这是一个非常令人困惑的问题,但我将试图解释我通过如何处理请求看到了什么 未登录: /%23/部分/资源 重定向到SSO: SSO重定向到: /#/一些/资源 这很有效 已登录: /%23/部分/

我目前正在通过SSO解决方案使用Spring Security的预验证,并且URL中的#存在问题。我注意到,如果对#进行URL编码,如果用户未登录,重定向将正常工作,因此我编写了一个过滤器,用于查找URL编码的参数,并对其进行解码。问题是,现在如果您登录,似乎URL正在被解码,而我的过滤器从未被触动过

这是一个非常令人困惑的问题,但我将试图解释我通过如何处理请求看到了什么

未登录: /%23/部分/资源

重定向到SSO:

SSO重定向到: /#/一些/资源

这很有效

已登录: /%23/部分/资源

: /#/some/resource是传递的URI,因此无需重写,通过调试日志验证URL是否正在传递

/%23/部分/资源返回到浏览器,404返回

我感到困惑的是,为什么要解码,然后它似乎在过滤链之后重新编码URL(可能?)

谢谢你的帮助