转发后允许重定向请求吗?

kaq*_*qao 4 java redirect servlets spring-mvc spring-security

在某些情况下,我想强制注销用户.我正在使用Spring Security,我知道如何执行此操作的唯一方法是转发/重定向到/ logout(或者Spring为侦听尝试而侦听的URL).从理论上讲,用户可以阻止他的浏览器遵循重定向,我宁愿前往注销URL,因为执行注销逻辑非常重要.由于Spring在(非)成功注销后总会进行重定向,我想知道这是否会成为一个问题.那么,简而言之,是在转发请求后允许重定向,还是会导致IllegalStateException?

ska*_*man 6

那么,简而言之,是在转发请求后允许重定向,还是会导致IllegalStateException?

不,这绝对没问题.响应本身不知道转发 - 它完全出现在服务器的内部.转发只是一种将控制从一个服务器组件内部传输到另一个服务器组件的机制.

相反,您通常无法在重定向后转发,因为重定向"提交"响应,并且没有撤消.