登录-12.Interceptor-详解

embedded/2025/2/25 9:45:31/

一.拦截器-拦截路径

配置拦截除了"/login"登录请求以外的所有请求。下面我们进行演示。首先演示登录。

当前返回值中没有输出任何定义拦截器时preHandle,postHandle和afterCompletion的输出信息,因此可以知道拦截器Interceptor并没有生效,原因是我们将"/login"请求排除了。

二.拦截器-执行流程

当我们打开浏览器来访问部署在web服务器当中的web应用是,我们所定义的过滤器会拦截到这次请求。拦截后会先执行放行前逻辑,再执行放行逻辑。由于我们当前是基于springboot来开发的,所以放行后进入到spring的环境当中。就要访问controller当中的接口方法。Tomcat服务器并不识别controller程序,但是识别servlet程序,因为Tomcat是一个servlet容器,而在spring的环境中,为我们提供了一个非常核心的servlet,我们叫前端控制器,这个servlet叫DispatcherServlet。所以请求会首先进入到DispatcherServlet,由DispatcherServlet将请求转给controller,再去执行对应的接口方法。但是我们现在又定义了拦截器,所以在执行controller的方法之前先要被拦截器拦截住。拦截器拦截到这些请求后先要对这些请求进行处理,在执行controller的方法之前要先进行preHandle方法,如果preHandle的返回值为true,执行放行操作,允许访问controller中的方法。如果false就不允许。controller中的方法执行完后在执行postHandle和afterCompletion方法,然后返回给DispatcherServlet,最终过滤器中执行放行后逻辑,最后给浏览器响应数据。

演示:

我们首先将过滤器的注解放开,让过滤器生效。

拦截器也生效 

重启服务,使用查询部门的请求 

 


http://www.ppmy.cn/embedded/165020.html

相关文章

51单片机学习之旅——定时器

打开软件 1与其它等于其它,0与其它等于0 1或其它等于1,0或其它等于其它 TMODTMOD&0xF0;//0xF01111 0000进行与操作,高四位保持,低四位清零,高四位定时器1,低四位定时器0 TMODTMOD|0x01;//0x010000 0…

python全栈-并发和网络通信

python全栈-并发和网络通信 文章目录 python全栈-并发和网络通信线程创建线程的方式等待线程join守护线程daemontrue/false互斥锁lock信号量semaphore事件event 协程coroutines异步io/asyncio 计算机网络通信IPOSI网络协议TCP/UDP区别TCP三次握手四次挥手 socket编程内置方法和…

计算机视觉:经典数据格式(VOC、YOLO、COCO)解析与转换(附代码)

第一章:计算机视觉中图像的基础认知 第二章:计算机视觉:卷积神经网络(CNN)基本概念(一) 第三章:计算机视觉:卷积神经网络(CNN)基本概念(二) 第四章:搭建一个经典的LeNet5神经网络(附代码) 第五章&#xff1…

从零开始玩转TensorFlow:小明的机器学习故事 4

探索深度学习 1 场景故事:小明的灵感 前不久,小明一直在用传统的机器学习方法(如线性回归、逻辑回归)来预测学校篮球比赛的胜负。虽然在朋友们看来已经很不错了,但小明发现一个问题:当比赛数据越来越多、…

第15届 蓝桥杯 C++编程青少组中/高级选拔赛 202401 真题答案及解析

第 1 题 【 单选题 】 表达式117 % 16 的结果是( )。 A:0 B:5 C:7 D:10 解析: % 是取模运算符,用于计算两个数相除后的余数。 计算 117 / 16,结果是 7,余数是 5。因此,117 % 16 = 5。答案: B 第 2 题 【 单选题 】 下列选项中,字符数组定义正确的是( …

ssh与服务器

目录 前言: 一、密码连接 二、密钥对连接 1.将公钥放在服务器 2.ssh连接 三、禁用密码 1.进入服务器/etc/ssh文件夹 2.打开sshd_config文件,进行如下配置 3.有可能还需要更改其他文件夹 4.重启ssh服务 四、config 五.ssh与github 1.本地创建…

【Elasticsearch】Painless 脚本语言如何学习

学习 Elasticsearch 的 Painless 脚本语言可以从以下几个方面入手: 1.官方文档 Elasticsearch 官方文档提供了关于 Painless 的详细指南和参考,是学习 Painless 的权威资源: • Painless Guide:官方文档中的 Painless 指南提供…

html css js网页制作成品——HTML+CSS蒧蒧面包店的网页设计(5页)附源码

目录 一、👨‍🎓网站题目 二、✍️网站描述 三、📚网站介绍 四、🌐网站效果 五、🪓 代码实现 🧱HTML