whistle.mock-plugins
Version:
Whistle 插件,用于快速创建 API 模拟数据
91 lines (65 loc) • 3.02 kB
Markdown
# Whistle Mock Plugin
一个用于Whistle的mock数据插件,帮助前端开发者管理和模拟API接口响应。
## 核心功能
### 1. 功能模块管理
- **创建功能模块**:用户可以创建多个功能模块,每个模块代表一组相关的API接口
- **启用/禁用功能模块**:整体控制一组接口的启用状态
- **管理功能模块**:编辑、删除功能模块及其描述信息
### 2. 接口代理配置
在每个功能模块下,用户可以添加多个接口代理配置,支持以下代理方式:
- **URL重定向**:将请求重定向到另一个URL地址
- **本地文件代理**:返回本地文件的内容作为响应
- **响应内容直接配置**:直接编辑JSON、HTML等响应内容
### 3. 代理规则控制
- **每个接口可独立启用/禁用**:精细控制每个接口的代理状态
- **匹配规则配置**:支持精确匹配、通配符、正则表达式等多种匹配方式
- **请求方法过滤**:可限定特定HTTP方法(GET, POST等)的请求被代理
### 4. 高级功能
- **响应延迟模拟**:模拟网络延迟,可针对接口设置响应时间
- **状态码与响应头配置**:自定义HTTP状态码和响应头
- **请求日志记录**:记录被代理的请求,便于调试和回溯
## 使用场景
1. **前后端分离开发**:前端开发不依赖后端接口进度
2. **复杂场景测试**:模拟各种API响应状态和错误情况
3. **演示环境搭建**:快速构建演示环境,无需部署完整后端
4. **接口联调**:在本地环境联调多个微服务接口
## 项目结构
```
whistle.mock-plugin/
├── app/ # 插件服务端代码
│ ├── index.js # 插件入口文件
│ └── public/ # 插件UI静态资源
├── ui/ # 插件UI源代码
│ ├── src/ # React源代码
│ ├── package.json # UI依赖配置
│ └── webpack.config.js # 构建配置
├── package.json # 插件依赖配置
└── README.md # 项目说明文档
```
## 页面结构
### 1. 首页/概览
- 显示插件使用统计信息
- 快速入门指南和使用提示
- 最近活动记录
### 2. 功能模块管理页面
- 功能模块列表展示
- 添加/编辑/删除功能模块
- 功能模块启用/禁用控制
- 每个功能模块的接口数量统计
### 3. 接口管理页面
- 特定功能模块下的接口列表
- 添加/编辑/删除接口配置
- 接口启用/禁用控制
- 接口详细配置:
- URL匹配规则
- 代理方式选择(URL重定向/本地文件/直接响应)
- 响应配置(状态码、头信息、延迟)
### 4. 系统设置页面
- 全局插件设置
- 日志记录设置
- 默认响应行为配置
## 技术实现
- 前端:React框架构建UI界面
- 构建:使用Webpack打包前端资源
- 插件通信:利用Whistle插件API与主程序通信
- 数据存储:使用本地文件系统存储配置信息