SpringSecurity6从入门到实战之Filter过滤器回顾

SpringSecurity6从入门到实战之Filter过滤器回顾

如果没有SpringSecurity这个框架,我们应该通过什么去实现客户端向服务端发送请求时,先检查用户是否登录,登录了才能访问.否则重定向到登录页面

流程图如下

过滤器回顾

Spring Security 对 Servlet 的支持是基于 Servlet Filter 的,所以先看一下过滤器的一般作用是很有帮助的。下图显示了单个HTTP请求的处理程序的典型分层。

以上是过滤链的使用,当所有的filter都走完后最终会发送请求到达Servlet

过滤器 Filter:

  • 1.必须实现 Filter 接口
  • 2.过滤器在访问 Web 资源可以对请求进行拦截,并对请求进行预处理和后处理操作,然后将请求传递给目标资源。
  • 3.如,强制登录过滤器,访问 web 资源时先对请求进行登录检查,已登录可以往后访问,未登录重定向回登录页。

过滤器链 FilterChain:

  • 1.在对一个 web 资源进行拦截处理时的多个 Filter 和 web 资源组成一个 FilterChain 过滤器链。
  • 2.FilterChain 中的 doFilter() 方法非常重要,用于让 Filter 链上的当前过滤器放行,使请求或响应进入下一 Filter 或 web 资源。
相关推荐
架构师沉默1 小时前
别又牛逼了!AI 写 Java 代码真的行吗?
java·后端·架构
小飞Coding3 小时前
Spring Boot 中关于 Bean 加载、实例化、初始化全生命周期的扩展点
spring boot
小飞Coding4 小时前
彻底搞懂 Spring 容器导入配置类:@EnableXXX 与 spring.factories 核心原理
spring boot
后端AI实验室6 小时前
我把一个生产Bug的排查过程,交给AI处理——20分钟后我关掉了它
java·ai
凉年技术8 小时前
Java 实现企业微信扫码登录
java·企业微信
狂奔小菜鸡9 小时前
Day41 | Java中的锁分类
java·后端·java ee
hooknum9 小时前
学习记录:基于JWT简单实现登录认证功能-demo
java
程序员Terry9 小时前
同事被深拷贝坑了3小时,我教他原型模式的正确打开方式
java·设计模式
NE_STOP9 小时前
MyBatis-缓存与注解式开发
java
码路飞10 小时前
不装 OpenClaw,我用 30 行 Python 搞了个 QQ AI 机器人
java