类 ResultExceptionHandler
- java.lang.Object
-
- ai.yue.library.web.grpc.config.exception.ResultExceptionHandler
-
@GrpcAdvice @ConditionalOnProperty(prefix="yue.exception-handler", name="enabled", havingValue="true", matchIfMissing=true) public class ResultExceptionHandler extends Object全局统一异常处理
统一异常响应体使用HTTP状态码与GRPC状态码职责对照:
HTTP状态码 GRPC状态码 异常范围 4xx 3 INVALID_ARGUMENT 客户端错误 5xx 13 INTERNAL 服务端异常 600 12 UNIMPLEMENTED 业务提示 - 从以下版本开始:
- 2022年5月20日
- 作者:
- ylyue
-
-
构造器概要
构造器 构造器 说明 ResultExceptionHandler()
-
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 io.grpc.StatusapiVersionDeprecatedExceptionHandler(ApiVersionDeprecatedException e)拦截API接口版本弃用异常io.grpc.StatusattackExceptionHandler(AttackException e)非法请求异常拦截io.grpc.StatusbindExceptionHandler(org.springframework.validation.BindException e)Valid 验证异常统一处理io.grpc.StatusclientFallbackExceptionHandler(ClientFallbackException e)服务降级io.grpc.StatusconvertExceptionHandler(cn.hutool.core.convert.ConvertException e)类型转换异常统一处理io.grpc.StatusdbExceptionHandler(DbException e)DB异常统一处理io.grpc.StatusexceptionHandler(Exception e)拦截所有未处理异常-13 INTERNALio.grpc.StatusforbiddenExceptionHandler(ForbiddenException e)无权限异常访问处理io.grpc.StatusloginExceptionHandler(LoginException e)拦截登录异常(User)io.grpc.StatusparamExceptionHandler(ParamException e)参数效验未通过统一处理io.grpc.StatusparamVoidExceptionHandler()参数效验为空统一处理io.grpc.StatusresultExceptionHandler(ResultException e)异常结果处理-synchronizedio.grpc.StatusstatusRuntimeExceptionHandler(io.grpc.StatusRuntimeException e)服务降级io.grpc.StatusvalidateExceptionHandler(cn.hutool.core.exceptions.ValidateException e)验证异常统一处理
-
-
-
方法详细资料
-
exceptionHandler
@GrpcExceptionHandler(java.lang.Exception.class) public io.grpc.Status exceptionHandler(Exception e)
拦截所有未处理异常-13 INTERNAL- 参数:
e- 异常- 返回:
- 结果
-
resultExceptionHandler
@GrpcExceptionHandler(ai.yue.library.base.exception.ResultException.class) public io.grpc.Status resultExceptionHandler(ResultException e)
异常结果处理-synchronized- 参数:
e- 结果异常- 返回:
- 结果
-
loginExceptionHandler
@GrpcExceptionHandler(ai.yue.library.base.exception.LoginException.class) public io.grpc.Status loginExceptionHandler(LoginException e)
拦截登录异常(User)Grpc状态码:3 INVALID_ARGUMENT
Http状态码:401
- 参数:
e- 登录异常- 返回:
- 结果
-
attackExceptionHandler
@GrpcExceptionHandler(ai.yue.library.base.exception.AttackException.class) public io.grpc.Status attackExceptionHandler(AttackException e)
非法请求异常拦截Grpc状态码:3 INVALID_ARGUMENT
Http状态码:402
- 参数:
e- 非法请求异常- 返回:
- 结果
-
forbiddenExceptionHandler
@GrpcExceptionHandler(ai.yue.library.base.exception.ForbiddenException.class) public io.grpc.Status forbiddenExceptionHandler(ForbiddenException e)
无权限异常访问处理Grpc状态码:3 INVALID_ARGUMENT
Http状态码:403
- 参数:
e- 无权限异常- 返回:
- 结果
-
apiVersionDeprecatedExceptionHandler
@GrpcExceptionHandler(ai.yue.library.base.exception.ApiVersionDeprecatedException.class) public io.grpc.Status apiVersionDeprecatedExceptionHandler(ApiVersionDeprecatedException e)
拦截API接口版本弃用异常Grpc状态码:3 INVALID_ARGUMENT
Http状态码:410
- 参数:
e- API接口版本弃用异常- 返回:
- 结果
-
paramVoidExceptionHandler
@GrpcExceptionHandler(ai.yue.library.base.exception.ParamVoidException.class) public io.grpc.Status paramVoidExceptionHandler()
参数效验为空统一处理Grpc状态码:3 INVALID_ARGUMENT
Http状态码:432
- 返回:
- 结果
-
paramExceptionHandler
@GrpcExceptionHandler(ai.yue.library.base.exception.ParamException.class) public io.grpc.Status paramExceptionHandler(ParamException e)
参数效验未通过统一处理Grpc状态码:3 INVALID_ARGUMENT
Http状态码:433
- 参数:
e- 参数校验未通过异常- 返回:
- 结果
-
bindExceptionHandler
@GrpcExceptionHandler(org.springframework.validation.BindException.class) public io.grpc.Status bindExceptionHandler(org.springframework.validation.BindException e)
Valid 验证异常统一处理Grpc状态码:3 INVALID_ARGUMENT
Http状态码:433
- 参数:
e- 验证异常- 返回:
- 结果
-
validateExceptionHandler
@GrpcExceptionHandler(cn.hutool.core.exceptions.ValidateException.class) public io.grpc.Status validateExceptionHandler(cn.hutool.core.exceptions.ValidateException e)
验证异常统一处理Grpc状态码:3 INVALID_ARGUMENT
Http状态码:433
- 参数:
e- 验证异常- 返回:
- 结果
-
dbExceptionHandler
@GrpcExceptionHandler(ai.yue.library.base.exception.DbException.class) public io.grpc.Status dbExceptionHandler(DbException e)
DB异常统一处理Grpc状态码:13 INTERNAL
Http状态码:506
- 参数:
e- DB异常- 返回:
- 结果
-
clientFallbackExceptionHandler
@GrpcExceptionHandler(ai.yue.library.base.exception.ClientFallbackException.class) public io.grpc.Status clientFallbackExceptionHandler(ClientFallbackException e)
服务降级Grpc状态码:13 INTERNAL
Http状态码:507
- 参数:
e- 服务降级异常- 返回:
- 结果
-
statusRuntimeExceptionHandler
@GrpcExceptionHandler(io.grpc.StatusRuntimeException.class) public io.grpc.Status statusRuntimeExceptionHandler(io.grpc.StatusRuntimeException e)
服务降级Grpc状态码:13 INTERNAL
Http状态码:507
- 参数:
e- grpc请求异常- 返回:
- 结果
-
convertExceptionHandler
@GrpcExceptionHandler(cn.hutool.core.convert.ConvertException.class) public io.grpc.Status convertExceptionHandler(cn.hutool.core.convert.ConvertException e)
类型转换异常统一处理Grpc状态码:13 INTERNAL
Http状态码:509
- 参数:
e- 转换异常- 返回:
- 结果
-
-