public abstract class BaseHandlerProcessor extends Object implements HandlerProcessor
抽象协助处理器
用于在各种 Handler 中根据情况相应地跳转到指定的页面或者输出json格式的数据Modifier and Type | Field and Description |
---|---|
protected org.springframework.security.web.savedrequest.RequestCache |
cache
声明了缓存与恢复操作
|
protected org.springframework.util.AntPathMatcher |
matcher
路径匹配策略
|
protected org.springframework.security.web.RedirectStrategy |
redirectStrategy
重定向策略
|
Constructor and Description |
---|
BaseHandlerProcessor() |
Modifier and Type | Method and Description |
---|---|
void |
deney(PropertyResource propertyResource,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
org.springframework.security.access.AccessDeniedException exception)
访问资源时权限被拒绝
|
void |
exception(PropertyResource propertyResource,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
Exception exception)
访问资源时因为权限等原因发生了异常后的处理
|
void |
exit(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
org.springframework.security.core.Authentication authentication)
退出成功后的处理
|
void |
failure(PropertyResource propertyResource,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
Exception exception)
登陆失败后的处理
|
protected String |
getReferer(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
从请求中获取请求的来源地址
|
void |
login(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
org.springframework.security.core.Authentication authentication,
SecurityToken token)
登陆成功后的处理
|
protected String |
match(javax.servlet.http.HttpServletRequest request)
判断当前请求是否时符合跳转要求
|
void |
preAuth(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
com.yishuifengxiao.common.tool.entity.Response<com.yishuifengxiao.common.tool.exception.CustomException> data)
输出前置校验时出现的异常信息
|
protected final org.springframework.security.web.savedrequest.RequestCache cache
protected final org.springframework.util.AntPathMatcher matcher
protected final org.springframework.security.web.RedirectStrategy redirectStrategy
public void login(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, org.springframework.security.core.Authentication authentication, SecurityToken token) throws IOException
login
in interface HandlerProcessor
request
- HttpServletRequestresponse
- HttpServletResponseauthentication
- 认证信息token
- 生成的tokenIOException
- 处理时发生问题public void failure(PropertyResource propertyResource, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, Exception exception) throws IOException
failure
in interface HandlerProcessor
propertyResource
- 系统里配置的资源request
- HttpServletRequestresponse
- HttpServletResponseexception
- 失败的原因IOException
- 处理时发生问题public void exit(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, org.springframework.security.core.Authentication authentication) throws IOException
exit
in interface HandlerProcessor
request
- HttpServletRequestresponse
- HttpServletResponseauthentication
- 认证信息IOException
- 处理时发生问题public void deney(PropertyResource propertyResource, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, org.springframework.security.access.AccessDeniedException exception) throws IOException
访问资源时权限被拒绝
本身是一个合法的用户,但是对于部分资源没有访问权限deney
in interface HandlerProcessor
propertyResource
- 系统里配置的资源request
- HttpServletRequestresponse
- HttpServletResponseexception
- 被拒绝的原因IOException
- 处理时发生问题public void exception(PropertyResource propertyResource, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, Exception exception) throws IOException
访问资源时因为权限等原因发生了异常后的处理
可能本身就不是一个合法的用户exception
in interface HandlerProcessor
propertyResource
- 系统里配置的资源request
- HttpServletRequestresponse
- HttpServletResponseexception
- 发生异常的原因IOException
- 处理时发生问题public void preAuth(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, com.yishuifengxiao.common.tool.entity.Response<com.yishuifengxiao.common.tool.exception.CustomException> data) throws IOException
输出前置校验时出现的异常信息
在进行前置校验时出现了问题,一般情况下为用户名或密码错误之类的preAuth
in interface HandlerProcessor
request
- HttpServletRequestresponse
- HttpServletResponsedata
- 响应信息IOException
- 处理时发生问题protected String getReferer(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
request
- HttpServletRequestresponse
- HttpServletResponseprotected String match(javax.servlet.http.HttpServletRequest request)
request
- HttpServletRequestCopyright © 2021. All rights reserved.