Class GrpcServerExceptionHandler

java.lang.Object
io.github.xezzon.zeroweb.common.grpc.GrpcServerExceptionHandler
All Implemented Interfaces:
org.springframework.grpc.server.exception.GrpcExceptionHandler

@Component public class GrpcServerExceptionHandler extends Object implements org.springframework.grpc.server.exception.GrpcExceptionHandler

gRPC 服务端异常处理器。

用于捕获 gRPC 调用过程中抛出的异常,并将其转换为统一的 gRPC StatusException 格式,同时附带业务错误码。

  • Field Details

    • ERROR_CODE

      public static final io.grpc.Metadata.Key<String> ERROR_CODE
      定义 gRPC 响应头中用于传递业务错误码的 Key。
  • Constructor Details

    • GrpcServerExceptionHandler

      public GrpcServerExceptionHandler()
  • Method Details

    • handleException

      public io.grpc.StatusException handleException(Throwable throwable)

      处理 gRPC 异常,并将其转换为 StatusException

      该方法会根据不同的异常类型,映射到不同的 gRPC Status 和业务错误码。 对于未知的异常,默认映射为 Status.UNKNOWNErrorCodeConstant.UNKNOWN

      Specified by:
      handleException in interface org.springframework.grpc.server.exception.GrpcExceptionHandler
      Parameters:
      throwable - 捕获到的异常。
      Returns:
      转换后的 StatusException