mirror of
				https://github.com/dromara/RuoYi-Vue-Plus.git
				synced 2025-11-04 16:23:42 +08:00 
			
		
		
		
	update 增加 feign 熔断 自定义结构体解析方法 与 demo 注释
This commit is contained in:
		@@ -7,7 +7,10 @@ import org.springframework.stereotype.Component;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * feign测试fallback
 | 
			
		||||
 * 自定义封装结构体熔断
 | 
			
		||||
 * 需重写解码器 根据自定义实体 自行解析熔断
 | 
			
		||||
 *
 | 
			
		||||
 * @see {com.ruoyi.framework.config.FeignConfig#errorDecoder()}
 | 
			
		||||
 * @author Lion Li
 | 
			
		||||
 */
 | 
			
		||||
@Slf4j
 | 
			
		||||
 
 | 
			
		||||
@@ -54,4 +54,40 @@ public class FeignConfig {
 | 
			
		||||
        return new Retryer.Default();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
//	/**
 | 
			
		||||
//	 * 自定义异常解码器
 | 
			
		||||
//	 * 用于自定义返回体异常熔断
 | 
			
		||||
//	 */
 | 
			
		||||
//	@Bean
 | 
			
		||||
//	public ErrorDecoder errorDecoder() {
 | 
			
		||||
//		return new CustomErrorDecoder();
 | 
			
		||||
//	}
 | 
			
		||||
//
 | 
			
		||||
//
 | 
			
		||||
//	/**
 | 
			
		||||
//	 * 自定义返回体解码器
 | 
			
		||||
//	 */
 | 
			
		||||
//	@Slf4j
 | 
			
		||||
//	public static class CustomErrorDecoder implements ErrorDecoder {
 | 
			
		||||
//
 | 
			
		||||
//		@Override
 | 
			
		||||
//		public Exception decode(String methodKey, Response response) {
 | 
			
		||||
//			Exception exception = null;
 | 
			
		||||
//			try {
 | 
			
		||||
//				// 获取原始的返回内容
 | 
			
		||||
//				String json = JsonUtils.toJsonString(response.body().asReader(StandardCharsets.UTF_8));
 | 
			
		||||
//				exception = new RuntimeException(json);
 | 
			
		||||
//				// 将返回内容反序列化为Result,这里应根据自身项目作修改
 | 
			
		||||
//				AjaxResult result = JsonUtils.parseObject(json, AjaxResult.class);
 | 
			
		||||
//				// 业务异常抛出简单的 RuntimeException,保留原来错误信息
 | 
			
		||||
//				if (result.getCode() != 200) {
 | 
			
		||||
//					exception = new RuntimeException(result.getMsg());
 | 
			
		||||
//				}
 | 
			
		||||
//			} catch (IOException e) {
 | 
			
		||||
//				log.error(e.getMessage(), e);
 | 
			
		||||
//			}
 | 
			
		||||
//			return exception;
 | 
			
		||||
//		}
 | 
			
		||||
//	}
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user