Feign的使用

本文介绍了如何在SpringBoot项目rmt通过Feign客户端调用charger服务,解决部署测试服时因网络问题导致的IP缺失问题,重点在于@FeignClient注解中指定远程IP和Nacos配置的配合。
摘要由CSDN通过智能技术生成

业务背景:

        两个springboot项目,charger项目、rmt项目,并注册在同一个nacos中。

        rmt项目需要调用charger提供的接口。

1、rmt引入charger的maven依赖

        <dependency>
            <groupId>com.dmyc.charger</groupId>
            <artifactId>charger-api</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>

2、配置启动类,启动类加上该注解

@EnableFeignClients

3、在rmt写一个service类型

注解@FeignClient 不可少,path为charger配置中的url项目路径,post和get的url要与charger中保持一致。 

 4、在rmt中把Feign的Service,正常当作普通的Service引用即可。

后续出现问题:

在本地可以跑通,但是上到测试服后,报出以下错误

观察请求路径,发现缺少了IP地址。

1、检查nacos配置,两个项目注册在同一个nacos上,无误,打包上测试服的jar也无误。

2、检查运行环境,与本地不同,两个项目不在同一台测试服务器上,网络不通,导致找不到IP。

解决:在@FeignClient注解上,指定被调用方的主机IP地址。

@FeignClient(value = "charger", path = "/charger", url = "http://127.0.0.1:10005")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值