2025-05-09 17:02:39 +08:00
|
|
|
|
<!-- Space: qifu -->
|
|
|
|
|
<!-- Parent: 后端技术&知识&规范 -->
|
|
|
|
|
<!-- Parent: 技术方案 -->
|
|
|
|
|
<!-- Parent: 基建 -->
|
|
|
|
|
<!-- Parent: 00-基础组件 -->
|
|
|
|
|
<!-- Title: 20250509-EngineStarterFeign使用指南 -->
|
|
|
|
|
|
|
|
|
|
<!-- Macro: :anchor\((.*)\):
|
|
|
|
|
Template: ac:anchor
|
|
|
|
|
Anchor: ${1} -->
|
|
|
|
|
<!-- Macro: \!\[.*\]\((.+)\)\<\!\-\- width=(.*) \-\-\>
|
|
|
|
|
Template: ac:image
|
|
|
|
|
Url: ${1}
|
|
|
|
|
Width: ${2} -->
|
|
|
|
|
<!-- Macro: \<\!\-\- :toc: \-\-\>
|
|
|
|
|
Template: ac:toc
|
|
|
|
|
Printable: 'false'
|
|
|
|
|
MinLevel: 2
|
|
|
|
|
MaxLevel: 4 -->
|
|
|
|
|
<!-- Include: 杂项/声明文件.md -->
|
|
|
|
|
|
|
|
|
|
<!-- :toc: -->
|
|
|
|
|
|
|
|
|
|
# engine-starter-feign 使用教程
|
|
|
|
|
|
|
|
|
|
> 基于 Feign 的通用封装
|
2025-05-23 15:49:26 +08:00
|
|
|
|
> 具体使用可参考 [engine-sample > engine-sample-starter-web](../engine-sample/engine-sample-starter-web)
|
2025-05-09 17:02:39 +08:00
|
|
|
|
|
|
|
|
|
## 功能特性
|
|
|
|
|
|
|
|
|
|
- [X] 请求头添加内部请求标识 `X-QiFu-From-In: true`
|
|
|
|
|
- [X] 请求头透传
|
|
|
|
|
- [X] 请求结果解析映射(解封装 `Result`)
|
|
|
|
|
|
|
|
|
|
-------
|
|
|
|
|
|
|
|
|
|
## 快速使用
|
|
|
|
|
|
2025-05-23 15:49:26 +08:00
|
|
|
|
- **注意:** `qifu-saas-parent >= 1.1.0-SNAPSHOT`
|
2025-05-09 17:02:39 +08:00
|
|
|
|
- **注意:** 启动类 `@ComponentScan` 需要变更为如下形式
|
|
|
|
|
- ```java
|
|
|
|
|
@ComponentScan(value = "com.yuanmeng.*",
|
|
|
|
|
excludeFilters = {
|
|
|
|
|
@ComponentScan.Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class),
|
|
|
|
|
@ComponentScan.Filter(type = FilterType.CUSTOM, classes = AutoConfigurationExcludeFilter.class)
|
|
|
|
|
})
|
|
|
|
|
@SpringBootApplication
|
|
|
|
|
public class SampleStarterWebApplication {
|
|
|
|
|
|
|
|
|
|
public static void main(String[] args) {
|
|
|
|
|
SpringApplication.run(SampleStarterWebApplication.class, args);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
### 添加依赖
|
|
|
|
|
|
|
|
|
|
```xml
|
|
|
|
|
|
|
|
|
|
<dependency>
|
|
|
|
|
<groupId>com.yuanmeng.engine</groupId>
|
|
|
|
|
<artifactId>engine-starter-feign</artifactId>
|
|
|
|
|
</dependency>
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
------
|
|
|
|
|
|
|
|
|
|
## 完整默认配置文件
|
|
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
|
yuanmeng:
|
|
|
|
|
feign:
|
|
|
|
|
#- 开启feign自动配置
|
|
|
|
|
enable: true
|
|
|
|
|
#- 开启请求头内部标识
|
|
|
|
|
enable-contract: true
|
|
|
|
|
#- 开启旧包兼容
|
|
|
|
|
enable-ignore: true
|
|
|
|
|
#- 开启结果解析
|
|
|
|
|
enable-decoder: true
|
|
|
|
|
#- 开启请求头传递
|
|
|
|
|
enable-interceptor: true
|
|
|
|
|
#- 链接超时时间
|
|
|
|
|
connect-timeout: 10
|
|
|
|
|
connect-time-unit: seconds
|
|
|
|
|
#- 读取超时时间
|
|
|
|
|
read-timeout: 60
|
|
|
|
|
read-time-unit: seconds
|
|
|
|
|
```
|