feign.FeignException$BadRequest: [400] during [POST] to [http:skydog-membermemberuserregister]

feign.FeignException$BadRequest: [400] during [POST] to [http:skydog-membermemberuserregister],第1张

在使用springcloud openfeign远程调用服务的时,若被调用服务出现了异常,

这里应该分为两类异常:

1. 系统运行时异常(可以理解为unchecked异常)

对于这种异常,我们通常是需要返回错误状态码并且一般使用400-500之间的HttpStatus(状态码),因为这个区间的状态码是网络供应商规定的,每个状态码都有其特定的含义。所以openfeign也不例外,openfeign在处理状态码的时候已经内部写死了:

 

然后看一下我们的全局异常处理配置:

 

但是对于第二类异常:

2. 业务异常

业务异常(自定义异常,也可以认为是checked异常),我们通常是需要将处理结果当成响应数据传递给调用者的,因此我们这里不应该使用BAD_REQUEST状态码,可以使用400-500之外的状态码,确保调用方可以获取到对饮的业务异常信息。

 

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/724034.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-26
下一篇 2022-04-26

发表评论

登录后才能评论

评论列表(0条)

保存