默认登陆界面的生成

流程分析

1. 请求 /hello 接口,在引入 spring security 之后会先经过一些列过滤器

  1. 在请求到达 FilterSecurityInterceptor时,发现请求并未认证。请求拦截下来,并抛出AccessDeniedException 异常。

  2. 抛出 AccessDeniedException 的异常会被 ExceptionTranslationFilter 捕获,这个 Filter 中会调用 LoginUrlAuthenticationEntryPoint#commence 方法给客户端返回 302,要求客户端进行重定向到 /ogin 页面。

  3. 客户端发送 /login 请求。

  4. /login 请求会再次被拦截器中 DefaultLoginPageGeneratingFilter 拦截到,并在拦截器中返回生成登录页面。

就是通过这种方式,SpringSecurity 默认过滤器中生成了登录页面,并返回!

相关推荐
搞不懂语言的程序员11 分钟前
Spring源码解析 - SpringApplication run流程-refreshContext(context)源码分析
java·spring
_hermit:11 分钟前
【从零开始java学习|第三篇】变量与数据类型的关联
java·学习
sql2008help4 小时前
使用spring-boot-starter-validation实现入参校验
java·开发语言
Mr_Air_Boy4 小时前
springboot集成xxl-job
java·spring boot·spring
Babybreath-4 小时前
Tomcat
java·tomcat
摇滚侠5 小时前
面试实战 问题二十三 如何判断索引是否生效,什么样的sql会导致索引失效
java
悟纤5 小时前
当生产环境卡成 PPT:Spring Boot 线程 Dump 捉妖指南 - 第544篇
java·spring boot·后端
江影影影7 小时前
Spring Boot 2.6.0+ 循环依赖问题及解决方案
java·spring boot·后端
Jonathan丶BNTang7 小时前
IntelliJ IDEA 2025.2 重磅发布
java·ide·intellij-idea
tanxiaomi8 小时前
学习分库分表的前置知识:高可用系统架构理论与实践
java·mysql·spring cloud·系统架构·springboot