过滤器执行过程中的请求转发和请求重定向

1.一个请求过来,首先得走完 过滤器链,才执行 请求ur资源

2.如果在这个过程中 出现了请求转发,那么等于 在这个过滤器方法调用了servlet的方法,servlet方法执行完还是在这个过滤器,继续往下执行,简单来说就是 这个 过滤器方法调用一个servlet方法,仅此而已

3.如果 在这个过滤器方法中,请求重定向,那么就是重新发一次请求,又会 重新从 过滤器链的 头走到 尾

4.例如在,springsecurity的 自定义 formLogin 页面
http.formLogin()// 开启表单认证
.loginPage(“/toLoginPage”)// 自定义登录页面
.loginProcessingUrl(“/login”)//表单提交的路径
.and().authorizeRequests().antMatchers(“/toLoginPage”).permitAll()//放行登录页面
.anyRequest().authenticated();

为什么要 放行 /toLoginPage ,就是因为,你请求过来,走security的 15个过滤器 的 过滤器链,如果判断你没有登入,那么就会 请求重定向到 login.html , 而 新的一次请求,也会走过滤器,这时又会判断你没有登入,这时你到不了 login.html, 所以 你会一直重定向导致重定向次数过多,所以 对于 login.html 我们都是放行的

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值