接口平台客户端
组件编码
hzero-boot-interface
一、简介
1.1 概述
接口平台客户端提供了对Rest风格、Soap风格调用的通用模板,模板支持Oauth2、Basic登录认证。客户端还提供了针对接口平台接口调用的SDK,使用该SDK调用接口平台接口,能够使用接口平台监控监控等功能。
1.2 组件坐标
<dependency>
<groupId>org.hzero.boot</groupId>
<artifactId>hzero-boot-interface</artifactId>
<version>${hzero.boot.version}</version>
</dependency>
1.3 功能特性
- 提供REST风格、Soap风格调用通用模板
- 提供接口平台接口调用SDK
注意:
SDK中有InterfaceInvokeSdk、PublicInterfaceInvokeSdk两个类。若是HZERO内部系统调用建议直接用InterfaceInvokeSdk此SDK直接向外部系统接口发起调用,不会走接口平台的网络。
PublicInterfaceInvokeSdk原本初衷是供外部系统调用接口平台接口使用的,但是可能会有依赖冲突问题,所以目前对外部系统通过SDK直接调用接口平台不是很友好。此SDK调用是真正意义上的走了接口平台完整的调用外部系统的接口流程。
二、使用说明
step1: 在工程中POM文件中添加依赖
<dependency>
<groupId>org.hzero.boot</groupId>
<artifactId>hzero-boot-interface</artifactId>
<version>${hzero.boot.version}</version>
</dependency>
step2: 发起调用
示例:REST风格,SDK调用接口平台接口
@Autowired
private InterfaceInvokeSdk interfaceInvokeSdk;
@Test
public void sdkDemo(){
// RequestPayloadDTO包含了调用外部系统接口所需要的所有参数信息
RequestPayloadDTO requestPayloadDTO
= new RequestPayloadDTO();
// 调用外部系统接口需要的头部参数
Map<String,String> headerMap = new HashMap<>();
requestPayloadDTO.setHeaderParamMap(headerMap);
// 调用外部系统接口需要的路径参数
Map<String,String> pathVariable = new HashMap<>();
requestPayloadDTO.setPathVariableMap(pathVariable);
// 调用外部系统接口需要的URL/GET参数
Map<String,String> urlOrGetMap = new HashMap<>();
requestPayloadDTO.setPathVariableMap(urlOrGetMap);
// 调用外部系统接口需要的body参数
String body ="";
requestPayloadDTO.setPayload(body);
// 调用外部系统接口需要的文件参数
Map<String, MultipartFile> file = new HashMap<>();
requestPayloadDTO.setMultipartFileMap(file);
// 外部系统接口的参数类型
String mediaType="";
requestPayloadDTO.setMediaType(mediaType);
// 发起调用
interfaceInvokeSdk.invoke(0L,
"TEST_ITF",
"TEST_SERVER",
requestPayloadDTO);
}
三、版本更新日志
版本 0.10.0.RELEASE [2019-07-20]
- 初始发布
展望
- 支持外部系统SDK调用