默认登陆界面的生成

流程分析

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

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

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

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

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

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

相关推荐
龙茶清欢13 分钟前
7、revision 是 Maven 3.5+ 引入的现代版本管理机制
java·elasticsearch·maven
柯南二号14 分钟前
【Java后端】《Spring Boot Starter 原理详解》博客
java·开发语言·spring boot
歪歪10029 分钟前
如何在SQLite中实现事务处理?
java·开发语言·jvm·数据库·sql·sqlite
毕设源码-郭学长1 小时前
【开题答辩全过程】以 J2EE在电信行业的应用研究为例,包含答辩的问题和答案
java·java-ee
Aevget1 小时前
「Java EE开发指南」如何用MyEclipse开发Java EE企业应用程序?(二)
java·ide·java-ee·开发·myeclipse
不爱编程的小九九1 小时前
小九源码-springboot048-基于spring boot心理健康服务系统
java·spring boot·后端
龙茶清欢1 小时前
Spring Boot 应用启动组件加载顺序与优先级详解
java·spring boot·后端·微服务
青云交1 小时前
Java 大视界 -- Java 大数据在智能公交调度优化与准点率提升中的应用实践(416)
java·动态规划·flink cep·spark mllib·智能公交调度·杭州公交案例·准点率提升
RainbowSea1 小时前
4. ChatClient 的初始,快速使用上手
java·spring·ai编程
RainbowSea1 小时前
3. Ollama 安装,流式输出,多模态,思考模型
java·spring·ai编程