Files
tyapi-frontend/docs/API在线调试功能说明.md
2025-11-24 16:06:44 +08:00

202 lines
4.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# API在线调试功能说明
## 功能概述
API在线调试功能为用户提供了一个可视化的界面来测试已订阅的API接口让用户能够
1. **选择产品**从已订阅的产品列表中选择要调试的API
2. **输入参数**:根据产品要求输入测试参数
3. **查看加密过程**:了解参数如何被加密处理
4. **获取响应**查看API的实际响应结果
5. **分析结果**了解API调用的完整过程
## 功能特点
### 1. 产品选择
- 自动加载用户已订阅的产品列表
- 显示产品名称、代码和价格信息
- 只显示有效的订阅产品
### 2. 参数输入
- 统一的参数结构:姓名、身份证号、手机号
- 实时参数验证
- 参数示例和说明
### 3. 加密处理
- 自动使用用户的Secret Key进行AES加密
- 显示原始参数和加密后的参数
- 确保参数安全性
### 4. 调试结果
- 完整的请求信息产品名称、API代码、交易ID等
- 请求时间和响应时间统计
- 成功/失败状态显示
- 原始响应数据展示
## 技术实现
### 后端接口
#### 1. 加密接口
```
POST /api/v1/encrypt
Content-Type: application/json
Authorization: Bearer {token}
{
"data": {
"name": "张三",
"id_card": "110101199001011234",
"mobile": "13800138000"
}
}
```
**响应**
```json
{
"success": true,
"data": {
"encrypted_data": "加密后的Base64字符串"
},
"message": "加密成功"
}
```
#### 2. API调用接口
```
POST /api/v1/{api_code}
Content-Type: application/json
Access-Id: {access_id}
{
"data": "加密后的参数"
}
```
### 前端实现
#### 1. 页面结构
- **调试配置区域**:产品选择、参数输入
- **调试结果区域**:请求信息、响应数据
- **使用说明区域**:操作指南和注意事项
#### 2. 核心功能
- 自动加载用户订阅产品
- 参数验证和格式化
- 加密参数调用
- 结果展示和分析
## 使用流程
### 1. 访问调试页面
- 登录系统后,进入"开发者中心" → "在线调试"
- 页面会自动加载用户的API密钥和订阅产品
### 2. 选择产品
- 从下拉列表中选择要调试的产品
- 系统会显示产品的详细信息
### 3. 输入参数
- 填写姓名(必填)
- 填写身份证号必填18位
- 填写手机号必填11位
### 4. 开始调试
- 点击"开始调试"按钮
- 系统会自动加密参数并调用API
- 等待响应结果
### 5. 查看结果
- 查看请求信息交易ID、响应时间等
- 查看原始参数和加密参数
- 查看API响应结果
## 注意事项
### 1. 费用说明
- 每次调试都会消耗API调用次数
- 会按照产品价格扣除相应费用
- 调试结果会记录在调用记录中
### 2. 数据安全
- 所有参数都经过AES加密处理
- 使用用户的专属Secret Key
- 不会在日志中记录敏感信息
### 3. 使用建议
- 使用真实的测试数据进行调试
- 注意参数格式的正确性
- 调试结果仅供参考
### 4. 错误处理
- 网络错误会显示相应提示
- API调用失败会显示错误信息
- 参数错误会给出具体提示
## 技术架构
### 前端架构
```
ApiDebugger.vue
├── 产品选择组件
├── 参数输入组件
├── 加密处理逻辑
├── 结果展示组件
└── 使用说明组件
```
### 后端架构
```
API Handler
├── 加密接口 (EncryptParams)
├── API调用接口 (HandleApiCall)
└── 密钥管理接口 (GetUserApiKeys)
```
### 数据流
1. 前端获取用户订阅产品
2. 用户输入参数
3. 前端调用加密接口
4. 前端使用加密参数调用API
5. 后端处理并返回结果
6. 前端展示调试结果
## 扩展功能
### 1. 参数模板
- 支持保存常用的参数组合
- 快速填充测试数据
- 参数历史记录
### 2. 批量调试
- 支持多个API同时调试
- 批量参数输入
- 结果对比分析
### 3. 调试历史
- 保存调试记录
- 结果回放功能
- 性能统计分析
### 4. 高级功能
- 自定义参数验证
- 响应数据解析
- 错误模式分析
## 常见问题
### Q1: 为什么看不到某些产品?
A: 只有已订阅且有效的产品才会显示在列表中。
### Q2: 调试失败怎么办?
A: 检查参数格式是否正确,网络连接是否正常,账户余额是否充足。
### Q3: 如何查看详细的错误信息?
A: 在调试结果区域会显示完整的错误信息和响应数据。
### Q4: 调试会消耗费用吗?
A: 是的,每次调试都会按照产品价格扣除相应费用。
### Q5: 如何保护我的API密钥
A: Secret Key默认隐藏显示可以点击"显示"按钮查看,建议不要泄露给他人。