组件说明
2025/9/7大约 2 分钟
组件说明
组件结构
├─src
│ ├─main
│ │ ├─java
│ │ │ └─top
│ │ │ └─codelong
│ │ │ └─sendsdk
│ │ │ ├─client
│ │ │ │ GatewayClient.java
│ │ │ │ HttpClientFactory.java
│ │ │ │
│ │ │ ├─config
│ │ │ │ GatewaySDKProperties.java
│ │ │ │ GatewayAutoConfiguration.java
│ │ │ │ GatewaySDKAutoConfiguration.java
│ │ │ │
│ │ │ ├─utils
│ │ │ │ JwtUtils.java
│ │ │ │
│ │ │ └─common
│ │ │ ├─enums
│ │ │ │ HttpMethod.java
│ │ │ ├─exception
│ │ │ │ GatewayException.java
│ │ │ │ AuthException.java
│ │ │ │ TimeoutException.java
│ │ │ └─Result.java
│ │ │
│ │ └─resources
│ │ └─META-INF
│ │ spring.factories
└组件作用
该组件是一个网关客户端SDK,主要功能包括:
- HTTP客户端封装:提供统一的HTTP请求接口,支持GET、POST、PUT、DELETE等方法
- JWT认证:自动生成和管理JWT令牌,用于与网关中心的安全通信
- 连接池管理:基于Apache HttpClient的连接池,支持高并发请求
- 异常处理:统一的异常体系,便于错误处理和调试
- 自动配置:通过Spring Boot自动配置机制,简化集成流程
组件构成
组件由以下主要文件构成:
1. 核心客户端类
- GatewayClient:网关客户端核心类,提供HTTP请求API
- HttpClientFactory:HTTP客户端工厂类,负责创建和配置HttpClient
2. 配置类
- GatewaySDKProperties:SDK配置属性类,管理网关地址、认证信息等
- GatewayAutoConfiguration:自动配置类,创建SDK所需的Bean
3. 工具类
- JwtUtils:JWT令牌生成工具类
4. 异常类
- GatewayException:网关异常基类
- AuthException:认证异常
- TimeoutException:超时异常
5. 数据模型
- Result:统一响应结果封装类
- HttpMethod:HTTP方法枚举
核心特性
1. 多协议支持
- 支持GET、POST、PUT、DELETE等HTTP方法
- 自动处理URL参数和请求体
2. 安全认证
- 基于JWT的令牌认证
- 自动在请求头中添加Authorization信息
- 支持自定义安全密钥
3. 连接池管理
- 可配置的最大连接数
- 连接超时和读取超时设置
- 自动清理空闲连接
4. 错误处理
- 统一的异常体系
- 详细的错误日志记录
- HTTP状态码检查
5. 响应处理
- 自动解析JSON响应
- 验证响应格式
- 提取业务数据