# api-gen **Repository Path**: Zhangwenxin123/api-gen ## Basic Information - **Project Name**: api-gen - **Description**: 一个基于node的tool 用于前端根据配置的swagger文档地址去自动生成接口文档 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-03-03 - **Last Updated**: 2025-06-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Swagger API 生成器 从 Swagger 文档自动生成 API 调用代码,支持 JavaScript 和 TypeScript,可以处理需要 Basic Auth 认证的 Swagger 文档。 ## 特性 - 支持 JavaScript 和 TypeScript 代码生成 - 支持 Basic Auth 认证 - 根据 Swagger 标签自动组织 API 文件结构 - 自动生成接口类型定义 - 友好的命令行界面 - 可配置的输出目录 ## 安装 ### 全局安装 ```bash npm install -g zwx-api-gen ``` ### 项目内安装 ```bash npm install --save-dev zwx-api-gen ``` ## 使用方法 ### 命令行使用 ```bash # 使用默认配置生成 JavaScript API 文件 zwx-api-gen # 生成 TypeScript API 文件 zwx-api-gen --typescript # 指定 Swagger 文档 URL zwx-api-gen --url http://example.com/v3/api-docs # 指定 Basic Auth 认证令牌 zwx-api-gen --auth YOUR_AUTH_TOKEN # 指定输出目录 zwx-api-gen --output ./src/api # 查看帮助 zwx-api-gen --help ``` ### 在项目中使用 在 `package.json` 中添加脚本: ```json { "scripts": { "gen-api": "zwx-api-gen --typescript" } } ``` 然后运行: ```bash npm run gen-api ``` ## 配置 ### package.json 配置 你可以在项目的 `package.json` 中添加 `zwxApiGen` 配置项: ```json { "name": "your-project", "version": "1.0.0", "zwxApiGen": { "url": "http://example.com/v3/api-docs", "auth": "YOUR_AUTH_TOKEN", "typescript": true } } ``` ### 命令行选项 | 选项 | 简写 | 描述 | 默认值 | | ---------------- | ---- | ------------------------ | -------------------- | | `--typescript` | `-t` | 生成 TypeScript 代码 | `false` | | `--url ` | `-u` | 指定 Swagger 文档 URL | 从 package.json 读取 | | `--auth ` | `-a` | 指定 Basic Auth 认证令牌 | 从 package.json 读取 | ## 输出结构 生成的 API 文件结构如下: ``` api/ ├── 分类1/ │ ├── 模块1.js │ └── 模块2.js └── 分类2/ ├── 模块3.js └── 模块4.js ``` 如果使用 TypeScript 模式,每个模块会生成两个文件: ``` api/ ├── 分类1/ │ ├── 模块1/ │ │ ├── index.ts │ │ └── types.ts │ └── 模块2/ │ ├── index.ts │ └── types.ts └── 分类2/ └── ... ``` ## 开发 ### 安装依赖 ```bash npm install ``` ### 运行开发版本 ```bash npm start ``` ### 构建 ```bash npm run build ``` ## 许可证 MIT