首页 > 作文

在springboot中如何使用filter设置要排除的URL

更新时间:2023-04-04 05:27:25 阅读: 评论:0

目录
使用filter设置要排除的urlfilter指定过滤url的常见问题经常会出现如下错误下面总结一下使用正确的1、 指定路径2、 过滤所有路径

使用filter设置要排除的url

@webfilter(ur计算机体系结构试题lpatterns = "/*")@order(value = 1)public class testfilter implements filter {     private static final t<string> allowed_paths = collections.unmodifiablet(new hasht<>(            arrays.aslist("/main/excludefilter", "/login", "/logout", "/register")));    @override    public void init(filterconfig filterconfig) throws rvletexception {        system.out.println("init-----------filter");    }     @override    public void dofilter(rvletrequest req, rvletrespon res, filterchain chain) throws ioexception, rvletexception {        httprvletrequest request = (httpr化工安全技术vletrequest) req;        httprvletrespon respon = (httprvletrespon) res;        string path = request.getrequesturi().substring(request.getcontextpath().length()).replaceall("[/]+$", "");        boolea小班育儿知识n allowedpath = allowed_paths.contains(path);         if (allowedpath) {            system.ou南充师范大学t.println("这里是不需要处理的url进入的方法");            chain.dofilter(req, res);        }        el {            system.out.println("这里是需要处理的url进入的方法");        }    }     @override    public void destroy() {        system.out.println("destroy----------filter");    }}

@order中的value越小,优先级越高。

allowed_paths

这个是一个集合,存放的是需要排出的url,用来判断是否是需要排除的url。

关于为什么springboot中使用了@webfilter但是过滤器却没有生效:一定要加上@configuration注解,@rvice其实也可以,其他类似。

filter指定过滤url的常见问题

在使用filter对一些自己指定的url进行过滤拦截时

经常会出现如下错误

1、 明明在@webfilter(urlpatterns={“/app/online”})中过滤的是/app/online 路径,但是运行之后发现,这个webfilter过滤器对所有的url都进行了过滤。

2、 运行之后发现过滤器没有初始化,没有被加载

下面总结一下使用正确的

合适的注解配置filter的方法:

1、 指定路径

在class 上添加注解@webfilter(urlpatterns={“/app/online”})

然后在启动类(**applicat我做了一项小实验三年级作文ion.java )上添加注解@rvletcomponentscan

即可。

代码如下:

2、 过滤所有路径

在class上添加@component或@configuration 即可

如果添加了@component或@configuration,又添加了@webfilter(),那么会初始化两次filter,并且会过滤所有路径+自己指定的路径便会出现对没有指定的url也会进行过滤

//过滤所有路径@componentpublic class webfilter implements filter(){//override三个方法。。。。。。@override public void init (filterconfig filterconfig) throws rvletexception{ system.out.println("初始化filter"); }}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持www.887551.com。

本文发布于:2023-04-04 05:27:23,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/dd42e37c6f244d08ee86f8406628acdb.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:在springboot中如何使用filter设置要排除的URL.doc

本文 PDF 下载地址:在springboot中如何使用filter设置要排除的URL.pdf

下一篇:返回列表
标签:路径   注解   的是   初始化
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图