@coderwhytop/api-gen-cli
v1.0.0
Published
一个强大的 API 代码生成器,支持 YApi 和 APIPost 平台,能够自动生成 TypeScript/JavaScript API 函数和类型定义。
Maintainers
Readme
API Generator CLI
一个强大的 API 代码生成器,支持 YApi 和 APIPost 平台,能够自动生成 TypeScript/JavaScript API 函数和类型定义。
特性
- 🚀 支持 YApi 和 APIPost 两大 API 管理平台
- 📝 自动生成 TypeScript/JavaScript API 函数
- 🔧 自动生成 TypeScript 类型定义
- 📁 按业务模块和 URL 前缀智能分组
- 🌳 生成树形结构的 JSON 数据文件
- ⚙️ 支持自定义模板和配置
安装
npm install -g api-gen-cli使用
初始化配置
api-gen首次运行会引导你创建配置文件 api-generator-config.json:
{
"platform": "apipost",
"baseUrl": "https://your-api-platform.com",
"token": "your-api-token",
"output": "src/api",
"targetLanguage": "typescript"
}配置参数说明
- platform: API 平台类型 (
yapi|apipost) - baseUrl: API 平台地址
- token: 项目访问令牌
- output: 输出目录(只能是目录路径)
- targetLanguage: 目标语言 (
javascript|typescript) - projectId: 项目ID(APIPost 平台必需)
输出结构
output/
├── function/ # API 函数代码
│ ├── 后台管理/
│ │ ├── talk.ts # /talk/* 相关的API
│ │ ├── talk.types.ts # talk相关的类型
│ │ └── dict.ts # /dict/* 相关的API
│ └── 用户端/
│ ├── user.ts
│ └── user.types.ts
└── json/ # 原始API数据
├── 后台管理/
│ ├── talk.json
│ └── dict.json
└── 用户端/
└── user.json生成的代码示例
import request from "@/request";
/**
* 用户登录
* @method POST
* @path /user/login
*/
export interface RequestUserLogin {
username: string;
password: string;
}
export interface ResponseUserLogin {
code: number;
data: {
token: string;
userInfo: UserInfo;
};
}
export async function user_login_post(params: RequestUserLogin) {
return request<ResponseUserLogin>({
url: '/user/login',
method: 'post',
data: params
});
}命令行选项
api-gen -c <config-path> # 指定配置文件路径License
ISC
