当前位置: 首页 > 知识库问答 >
问题:

Quarkus Microprofile Rest客户端,如何以不同的方式处理错误

魏宸
2023-03-14

我有2个Quarkus服务,一个作为边缘服务,另一个作为下游服务,通信是通过Quarkus MicroProfile Rest-API客户机完成的。现在,下游服务可能会返回某种带有Json主体的坏请求错误(4xx)状态。我现在的问题是边缘服务正在用WebApplicationException抛出500个错误,因此,有没有一种方法可以将相同的响应代码和主体从下游服务填充到边缘服务?

共有1个答案

周辰沛
2023-03-14

此异常由默认rest客户端ResponseExceptionMapper引发。

您应该能够通过向application.properties添加以下属性来禁用它:

microprofile.rest.client.disable.default.mapper=false

请参见MicroProfile Rest客户端规范的默认ResponxeExceptionMapper和ResponseExceptionMapper部分。

 类似资料:
  • 请帮助我理解grpc客户端连接错误处理。 我以前用过Micrsoft WCF。如果没有接受以下传入连接的服务,很容易尝试多次连接并放弃: 如果某些IP: port上没有服务侦听,则进行5次连接尝试,然后终止客户端应用程序 这是在客户端和服务同时从VisualStudio调试启动时使用的,所以有时客户端首先启动,它必须等待服务启动。 我曾尝试使用gRPC客户端执行相同的操作,但没有重置from恢复工

  • 注意:“”表示我要在两个地址上侦听客户端。 server.py client.py

  • 我在服务器上使用GraphQL和mongoose。 当发生验证错误时,GraphQL突变发送状态代码为200的响应。在客户端,响应如下所示: 我想使用阿波罗客户端突变promise的功能访问验证错误。类似: 如何做到这一点?

  • 在我的quarkus rest项目中,我有一个使用mutiny的restclient: 我想处理Property non 2XX httpError,所以我制作了我的例外文件 客户端上的错误调用显示MyExceptionMapper处理响应,但异常会引发,并且不会成为我的Uni客户端响应对象上的失败 我是否以错误的方式对rest客户使用叛变? 谢谢 更新 好吧,我忘了添加依赖quarkus res

  • 我有一个ASP.NET Core1.0Web API应用程序,并试图弄清楚如果我的控制器调用的函数出错,如何将异常消息传递给客户端。 我确实看到了一些使用的文档,但是为了使用它,我必须安装compat shim。在Core1.0中有没有一种新的方法来做这些事情? 这是我一直在尝试的垫片,但它不起作用: 当抛出时,我查看客户端,在内容中找不到我正在发送的消息。