脱离spring cloud框架,独立使用openfeign进行远程调用

本文介绍了如何在不依赖Spring Cloud的情况下,仅使用Feign核心依赖和Jackson支持,实现对第三方服务的HTTP调用。步骤包括添加Feign和Jackson相关依赖、定义Feign接口、注册接口到Spring容器,并配置请求拦截器定制请求头。通过这种方式,可以在微服务之外的项目中便捷地调用外部服务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

      本文目的:单独使用feign的相关依赖实现项目的http调用。

     现在的微服务项目不少都使用的是springboot+spring cloud构建的项目,微服务之间的调用都离不开feign来进行远程调用。那么我们一个服务需要调用第三方的服务的时候,我们常常可能使用httpclient或者restTemplate等客户端api来实现远程调用,其实我们可以在微服务没有适用spring cloud框架的情况下,想调用第三方服务,也可以通过feign组件实现http的远程调用。

1 添加相关依赖

        <dependency>
			<groupId>io.github.openfeign</groupId>
			<artifactId>feign-core</artifactId>
			<version>11.0</version>
		</dependency>
		<dependency>
			<groupId>com.netflix.feign</groupId>
			<artifactId>feign-jackson</artifactId>
			<version>8.18.0</version>
		</dependency>

2  创建feign的接口文件

feign的接口文件主要是通过@RequestLine注解+请求方式+第三方的接口子路径地址来注明需要调用的第三方接口路径,如下图2.1所示 IMarketDataOuterApi.java 接口

图2.1

 

下图2.2为在项目中调用IMarketDataOuterApi的cityList方法:

图2.2

 3  需要在spring容器中注册一个IMarketDataOuterApi的Feign包装过的一个IMarketDataOuterApi对象

如图3.1所示:

图3.1

创建IMarketDataOuterApi的feign接口时需要指定第三方请求根路径和feign的请求拦截器。

拦截器中可以对feign的请求头进行统一定制。如图3.2所示:

4  完成以上工作,既可以启动项目,直接调用接口方法就可以访问第三方服务了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荆茗Scaler

你的鼓励是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值