00:00
那么刚才呢,我们说了自定义局部过滤器,接下来呢,我们来看我们的自定义全局过滤器,那这个需求呢,是编写我们的全局过滤器,在过滤器中呢?检查请求中是否携带我们token请求头啊,在我们的请求中啊,检查是否携带我们的token请求头,如果token请求头存放,则放行,如果说我们token为空或者是不存在,则设置我们返回的这个状态码呢?是未授权也就不再执行下去了。那么我们这个全局。过滤器的这个过滤器类啊,名字叫我们的my global filter,我们把这个名字先复制,然后呢,我们打开我们的刚才的这个这一块来看,这个呢是我们的全局过滤器,那在这一块呢,我们的这个。Global filter呢,是跟我们的这个ordering啊,我们联合一块使用的,那在这一块的话呢,我们回过来。在我们的CTRLN,我们做个global filter,然后呢打开,然后CTRLH。
01:07
然后可以看到我们的global,它是一个接口。然后呢,我们随便打开一个它的时间类。可以看到啊,我们的这个要建的这个类,需要让它同时实现我们的global filter和我们的order read啊这个接口,那我们的这个order read呢,是设置我们过滤器的这个执行顺序,那它的值越小呢,越优先执行,接下来我们来写一下。打开我们这个,然后呢,我们在这一块,我们给它加一个filter。点我们刚才这个名称。的filter。然后呢,我们把我们刚才写的这个。Filter,我们自定义的,局部的,我们也给它放进来。
02:08
好让我们呢,在这一块实现implement,我们的global future,然后呢,还有我们的。Read。我们这个,然后呢,同时我们把它加个注解,放到我们的反转到我们的容器当中,Component。然后呢,来实现它的抽象方法。好,这一块呢,我们给它返回一,这个呢,是我们的值越小越先执行。
03:10
我们的值越小越先执行,然后呢,我们来写这边这个逻辑,我们首先先来打印一句话。我们的。这个呢,是我们的全局过滤器。那么接下来的话呢,我们也是啊,首先得到我们的请求exchange,点我们的request,得到我们的请求头。Get我们的。然后呢,得到我们当中的第一个get first。然后呢,这个是这块是我们的token。
04:03
然后呢,它的返回应该是一个string类型的。啊,Token好,然后接下来呢,我们来判断我们的token。我们这块呢,用我们string。当中的啊,工具类,我们is black,如果没有我们的token呢?我们exchange。得到我们的响应。头。然后这一块稍等来看一下我们的需求啊,如果说是我们的token为空或者不存在的话,就设置我们的返回状态码为未授权,也不再执行下去。好的,我们回过来。然后呢,我们这一块set我们的data code,我们这一块呢,用我们的HTTP。
05:02
这有个status啊,就这个on authorized这个呢,其实就是我们的四零一来点进来看一下可以看到啊,未授权。并且呢,我们给他返回,我们就不再执行下去了,我们的exchange。得到我们的response,然后呢,Set我们的。不再执行下去。那这块呢,就是我们的未授权,那这块呢,就我们的授权的是我们的点我们的filter file t filter,然后呢,里边的参数是我们的exchange,好好,那我们这个完成了以后呢,我们的全局自定义全局过滤器是不需要配置我们的BL配置文件的。
06:02
那这样的话呢,我们来重启一下。好,我们启动完成以后,我们打开浏览器。然后访问。访问的话,这块会给我们。因为它header里边不带我们的token,所以他给我们返回未授权401,但是如果我们想在浏览器当中模拟我们header啊,带我们的请求头当中携带我们的token,这块是模仿不了的,我们可以通过一个工具啊叫postman。这块我资料里边已经给大家准备好了,这块的话就是第一次安装,安装完以后需要进行一个注册啊,注册就可以了,然后我们这点这块有个尿request,这边呢,我们写一个叫global。我们叫global这个名字随便起啊,然后这个我们写一个吧。
07:03
我们叫嘿嘿,然后呢,我们在这一块。我们创建一个create,一个collection,我们这个叫我们的global。告我们的getaway。然后呢,打上对号。点这个。好开始,然后呢,把我们的这个地址啊,这块这个地址我们拷过来。复制到我们这个里边,然后呢,我们发送。发送呢,可以看到它这边显示的是401未授权,然后我们怎么在head里边给他加token呢,它这一块。啊,我们这个K,我们叫token,然后我们的value呢,可以随便写,我们写一个叫嘿嘿嘿,加完以后呢,我们再来发送。
08:09
诶,可以看到我们这个U的阶层数据,我们就显示出来了,说明我们配置的这个自定义全局过滤器,它是没有问题的。
我来说两句