在学习Spring Security进行权限认证时,全局异常不捕获配置的异常处理器
问题: 全局异常捕获了Security自定义异常处理器
我自定义的异常处理类如下:
解决办法:在全局异常中捕获这两个异常,然后直接抛出就行:
/**
* 全局捕获security的权限不足异常
*/
@ExceptionHandler(value = AccessDeniedException.class)
public ResponseResult<String> exceptionHandler(AccessDeniedException e) {
String s = CommonUtils.exceptionInfo(e);
log.error("权限不足异常!异常处在:[{}] , 原因是:[{}]", s, e.getMessage());
throw e;
}
/**
* 全局捕获security的认证失败异常
*/
@ExceptionHandler(value = AuthenticationException.class)
public ResponseResult<String> exceptionHandler(AuthenticationException e) {
String s = CommonUtils.exceptionInfo(e);
log.error("用户认证失败异常!异常处在:[{}] , 原因是:[{}]", s, e.getMessage());
throw e;
}