spring mvc添加自定义过滤器后,所有请求都404,找不到路径,没有响应

spring框架为我们提供了很多的过滤器,比如字符编码过滤器CharacterEncodingFilter等,当然我们也可以自定义过滤器,当启动自己的过滤器后,发现没加过滤器之前可以正常访问的请求在加入自定义的过滤器后就不能正常访问了,所有请求都是可以发送,但是没有响应,原因就在于你自定义的过滤器在处理业务代码之后没有释放过滤器链,导致正常的web请求资源没法继续。

自定义的过滤器必须实现顶级过滤器接口,如下图:


需要我们实现其中的方法:dofilter,该方法有一个入参FilterChain,该参数是过滤器链参数,其内部只有一个方法:doFilter,意思是通知web容器把请求交给Filter链的一个filter去处理,如果没有下一个filter,则就访问当前的请求的action;

所以,看到这里就知道,添加自己的过滤器,原来正常的请求都没法正常当问,变成没有响应或者404,就是因为i没有在自定义的过滤器中的doFilter调用入参FilterChain的doFilter方法;

猜你喜欢

转载自blog.csdn.net/llf_1241352445/article/details/81048475
今日推荐