当前位置: 首页 > news >正文

Feign动态URL配置

方式一、亲测可用,缺点是每个类都需要单独配置

@FeignClient(value = "my-biz", url = "${external.my.biz_url}", configuration = FeignHeaderInterceptor.class)
public interface MyBizFeign {}@Data
@Component
@RefreshScope
@ConfigurationProperties(prefix = "ifc")
public class MyProperties {/** 是否使用冒烟url */private boolean useSmokeUrl;/** 冒烟地址 */private String smokeUrl;
}@Slf4j
public class FeignHeaderInterceptor implements RequestInterceptor {@Overridepublic void apply(RequestTemplate requestTemplate) {//根据开关,动态调整urlMyProperties properties = SpringUtil.getBean(MyProperties .class);if (null != properties && properties .isUseSmokeUrl()) {requestTemplate.target(ifcProperties.getSmokeUrl());}// 添加header请求头log.debug("request feign请求,添加header头信息~~");requestTemplate.header("X-SOURCE-SYSTEM", SYS_NAME);}
}

方式二、没测过

@FeignClient(name = "energyCloudAdminFeignClient", url = "${energy.cloud.url}")
public interface EnergyCloudAdminFeignClient {@GetMapping("/sys/user/getCurrUser")JSONObject getCurrUser(URI uri, @RequestHeader MultiValueMap<String, String> headers, @RequestParam Map<String, String> bodies);
}
@Service
@RefreshScope
@Slf4j 
public class SysUserOtherAppService {@Value("${energy.cloud.url}")private String url;@Autowiredprivate EnergyCloudAdminFeignClient energyCloudAdminFeignClient;public void testMethod() {// 实现动态指定URIJSONObject jsonObject = energyCloudAdminFeignClient.getCurrUser(new URI(url), headers, bodies);}}

 

http://www.wxhsa.cn/company.asp?id=6734

相关文章:

  • 自动化部署工具 Jenkins 的安装与配置
  • pip 搭建源
  • qoj10093 Jump the Frog
  • new 和make
  • Ceres 常用 LossFunction 对比
  • python函数
  • git使用
  • 测试开发全日制学徒班火热报名中|跟着名企大咖做真实项目,结业即上岗
  • 墨刀是否能替代Axure?从产品经理三大画图能力深度分析
  • AI 自动化智能体训练营
  • 微信商户绑定微信公众号、小程序
  • 唯创知音AI语音交互芯片与模组介绍
  • k3s 高可用集群部署(内置 etcd + VIP + keepalived)
  • 问HashMap底层原理?
  • 用 Go 重写 adbkit:原理、架构与搭建实践
  • C语言环境搭建之Linux子系统使用vscode连接子系统
  • 移远AT指令笔记
  • 数据类型
  • iphone运行windows系统
  • NVR接入录像回放平台EasyCVR视频融合平台语音对讲配置指南
  • Ubuntu filebrowser网盘工具安装
  • 图片结构 - voasem
  • ESP32做AP,ESP8266做station,遥控
  • 实用指南:25年高联:一试填空题解析(下篇)
  • Spring AOP 面向切面编程 - 浪矢
  • jvm内存泄漏的排查tips总结
  • IPA
  • Chromium历史版本下载方式
  • 【ACM出版】第三届物联网与云计算技术国际学术会议 (IoTCCT 2025)
  • 2025年最全 Wiki 管理工具测评:ONES、Confluence、Notion......哪个更适合你?