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

2024-06-06 09:09:43 浏览数 (2)

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

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

流程图如下

  • 官方文档:https://docs.spring.io/spring-security/reference/6.0/index.html
  • 中文文档:https://springdoc.cn/spring-security/index.html

过滤器回顾

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 资源。

0 人点赞