你好,
我们有一个可以通过 HTTP 和 gRPC 访问的 NestJS 应用程序(使用自定义 RPC 策略)。
虽然它们不共享相同的路线,但它们确实共享一些代码。例如,从数据库中查找资源的服务。我们最初遵循文档并使用异常过滤器来管理 HTTP 响应状态代码。这意味着当找不到资源时,服务会抛出 NotFoundException 的实例。
然而,现在我们正在尝试与 RPC 异常处理程序集成,我们发现任何不是 RpcException 实例的异常类型都将被 RPC 微服务视为内部服务器错误,包括 HttpExceptions。
查看文档和源代码后,我找不到在这两个微服务之间正确共享异常的方法,但我可能完全错了。
有没有办法在 HTTP 和 RPC 服务之间共享代码,同时仍然通过这两种协议准确报告异常?