Feign 自定义 ErrorDecoder (捕获 Feign 服务端异常)

问题描述:

Feign 客户端捕获不到服务端抛出的异常

解决:

微服务之间接口互相调用,Feign客户端需要捕获服务的抛出的异常,并且返回统一错误格式。

 

@Configuration
public class FeignErrorDecoder implements ErrorDecoder {

    @Override
    public Exception decode(String methodKey, Response response) {
        String msg = null;
        try {
            msg = Util.toString(response.body().asReader());
        } catch (IOException e) {
            e.printStackTrace();
        }
        // 抛出自定义的业务异常
        throw new BusinessException(CodeEnum.OPERATIONFAIL.getCode(),msg);

    }
}

 


版权声明:本文为qq_29766917原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。