类 RelativeRedirectFilter
java.lang.Object
cn.taketoday.web.servlet.filter.GenericFilterBean
cn.taketoday.web.servlet.filter.OncePerRequestFilter
cn.taketoday.web.servlet.filter.RelativeRedirectFilter
- 所有已实现的接口:
cn.taketoday.beans.factory.Aware,cn.taketoday.beans.factory.BeanNameAware,cn.taketoday.beans.factory.DisposableBean,cn.taketoday.beans.factory.InitializingBean,cn.taketoday.context.EnvironmentAware,cn.taketoday.core.env.EnvironmentCapable,ServletContextAware,Filter
Overrides
HttpServletResponse.sendRedirect(String) and handles it by
setting the HTTP status and "Location" headers, which keeps the Servlet
container from re-writing relative redirect URLs into absolute ones.
Servlet containers are required to do that but against the recommendation of
RFC 7231 Section 7.1.2,
and furthermore not necessarily taking into account "X-Forwarded" headers.
Note: While relative redirects are recommended in the RFC, under some configurations with reverse proxies they may not work.
- 从以下版本开始:
- 4.0 2022/3/27 22:03
- 作者:
- Rob Winch, Rossen Stoyanchev, Harry Yang
-
字段概要
字段从类继承的字段 cn.taketoday.web.servlet.filter.OncePerRequestFilter
ALREADY_FILTERED_SUFFIX从类继承的字段 cn.taketoday.web.servlet.filter.GenericFilterBean
logger -
构造器概要
构造器 -
方法概要
修饰符和类型方法说明protected voiddoFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) Same contract as fordoFilter, but guaranteed to be just invoked once per request within a single request thread.Return the configured redirect status.voidsetRedirectStatus(HttpStatusCode status) Set the default HTTP Status to use for redirects.从类继承的方法 cn.taketoday.web.servlet.filter.OncePerRequestFilter
doFilter, doFilterNestedErrorDispatch, getAlreadyFilteredAttributeName, isAsyncDispatch, isAsyncStarted, shouldNotFilter, shouldNotFilterAsyncDispatch, shouldNotFilterErrorDispatch从类继承的方法 cn.taketoday.web.servlet.filter.GenericFilterBean
addRequiredProperty, afterPropertiesSet, createEnvironment, destroy, getEnvironment, getFilterConfig, getFilterName, getServletContext, init, initBeanWrapper, initFilterBean, setBeanName, setEnvironment, setServletContext
-
字段详细资料
-
redirectStatus
-
-
构造器详细资料
-
RelativeRedirectFilter
public RelativeRedirectFilter()
-
-
方法详细资料
-
setRedirectStatus
Set the default HTTP Status to use for redirects.By default this is
HttpStatus.SEE_OTHER.- 参数:
status- the 3xx redirect status to use
-
getRedirectStatus
Return the configured redirect status. -
doFilterInternal
protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException 从类复制的说明:OncePerRequestFilterSame contract as fordoFilter, but guaranteed to be just invoked once per request within a single request thread. SeeOncePerRequestFilter.shouldNotFilterAsyncDispatch()for details.Provides HttpServletRequest and HttpServletResponse arguments instead of the default ServletRequest and ServletResponse ones.
- 指定者:
doFilterInternal在类中OncePerRequestFilter- 抛出:
ServletExceptionIOException
-