通过feign调用接口
feign是声明式WEbService客户端,它的使用方法是定义一个接口,在接口上添加注解,即可完成对服务提供方接口的绑定,Feign可以与Ribbon组合实现负载均衡。它让调用接口更加容易。
- Demo
服务端、客户端都可以参考之前的项目https://blog.csdn.net/zgsxhdzxl/article/details/103781278,现在在原来的基础上进行更改
- 新建一个service工程
- 新建一个接口,方法跟服务端的方法一致
@FeignClient(name = "PRODUCT", configuration = FeignClientConfig.class)
public interface TestService {@RequestMapping("/test/get/{id}")public String get(@PathVariable("id") String id);
}
- 由于做了接口加密,所以配置config
@Configuration
public class FeignClientConfig {@Beanpublic BasicAuthRequestInterceptor getBasicAuthRequestInterceptor() {return new BasicAuthRequestInterceptor("admin", "123456");}@Beanpublic Logger.Level getFeignLoggerLevel() {return feign.Logger.Level.FULL ;}
}
- 新建一个consumer工程,配置跟之前的一样
- 在启动类上开启feign
@EnableFeignClients("com.zxl.service")
- 调用feign接口
@RequestMapping("/test")
@RestController
public class TestController {@Autowiredprivate TestService testService;@RequestMapping("/get")public String get(String id) {return testService.get(id);}
}
- 结束
Feign原理
Feign的一个关键机制就是使用了动态代理。
- 如果对某个接口定义了FeignClient注解,那么Feign就会针对该接口创建一个动态代理。
- 调用接口,其实就是调用Feign创建的动态代理。
- Feign会根据接口上的注解、参数等,动态构建出需要的服务地址
- 进行请求以及接收相应消息
通过feign调用接口相关推荐
- retryexec.java 94_解决feign调用接口不稳定的问题
我就废话不多说了,大家还是直接看代码吧~ Caused by: java.net.SocketException: Software caused connection abort: recv fai ...
- feign调用接口参数可以为null吗_FeignClient调用POST请求时查询参数被丢失的情况分析与处理...
前言 本文没有详细介绍 FeignClient 的知识点,网上有很多优秀的文章介绍了 FeignCient 的知识点,在这里本人就不重复了,只是专注在这个问题点上. 查询参数丢失场景 业务描述: 业务 ...
- 通过Feign调用接口,返回数据时出现数据乱码
在路径映射上添加 produces = MediaType.APPLICATION_JSON_UTF8_VALUE, consumes = "application/json;charset ...
- ARTS-11(动态规划、线程池解析、Feign原生接口调用、好用工具推荐)
Algorithm 动态规划思路及解题 Review 线程池的使用 1).多线程的好处 提升资源利用率 提高程序处理效率:例如对执行顺序不敏感的任务,可以交由多个线程进行并行处理 减少了创建和销毁线程 ...
- FeignClient调用接口接收不到参数问题
FeignClient调用接口接收不到参数问题 1. 问题描述 2. 问题分析 3. 测试验证 3.1 环境依赖 3.2 代码实现 4. 结论总结 5. 阿里开发手册 1. 问题描述 问题就是通过Fe ...
- feign调用第三方接口_讲一个你不知道的事:SringCloud的feign的继承特性
前言 说起SpringChoud的feign大家用过的都说好.Feign是Netflix开发的声明式.模板化的HTTP客户端.对于我们微服务来说,微服务之间的api调用,使用feign来说是再方便不过 ...
- 使用 Feign 调用分页接口报错:Method has too many Body parameters(亲测)
一.背景 接口定义: @ApiOperation(value = "分页查询会话") @PostMapping(Routes.SESSIONS_QUERY) JsonResult& ...
- feign调用service_Spring-cloud-eureka使用feign调用服务接口
Spring-cloud-eureka使用feign调用服务接口的具体方法,供大家参考,具体内容如下 基于spring-boot 2.0以上版本完成的微服务架构 pom.xml org.springf ...
- 1、基于Feign的接口调用概述
我们通过一个例子来解析"基于Feign的接口调用" 1.示例概述 图中有三个服务app-a.app-b.app-a-api app-a-api 是 app-a 服务的接口规范,里面 ...
最新文章
- Format specifies type 'id' but the argument has type 'NSError *__autoreleasing *
- Python日期字符串到日期对象
- SharePoint 2013/2010 中的日历重合 (Calendars Overlay)
- python dataframe loc函数_python pandas.DataFrame.loc函数使用详解
- BZOJ 1305 [CQOI2009]dance跳舞
- python通过MySQLdb操作mysql
- 拓端tecdat|R语言指数平滑法holt-winters分析谷歌Google Analytics博客用户访问时间序列数据
- Java实现过滤敏感词汇
- openv学习—Template Matching
- VC++_2010_学习版_下载教程
- 匿名留言板表白墙 小程序校园树洞带后台
- react-redux多reducer完整实例
- 微信公众平台开发--表情符号
- js数组操作的一些方法在面试题的使用
- 二维插值-MATLAB
- getdate、dateadd、datediff、datename、datepart关于日期函数的用法及理解
- 自定义datastage阶段
- 能力圈与焦虑:焦虑是因为自己能力不够吗?
- 全自动生成二维码和条形码,Excel和WPS都可以哦
- 安科瑞「解决方案」消防产品解决方案及上图方案
热门文章
- 动态ip地址有什么优缺点!
- Excel 使用CHIINV函数和GAMMA.DIST函数绘制卡方分布
- 智慧公租房解决方案你知多少?
- 数组push方法使用 Uncaught TypeError: Cannot read property ‘push‘ of null
- 武汉python工资一般多少_个人税后月薪一万在武汉是什么样的体验?
- canny算子的python实现以及pytorch实现
- 2018-2-13-win10-uwp-判断文件存在
- 按键精灵_关于窗口无响应、卡屏状态的判断判定
- 人工干预随机数中的概率and一些数组的小事
- jiavascript 精华收集