Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>VS APIFOX HelperNew to Visual Studio Code? Get it now.
VS APIFOX Helper

VS APIFOX Helper

wangrc

|
3,380 installs
| (2) | Free
VS APIFOX Helper
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

VS Apifox Helper

一个用于解析 Spring Boot Controller 并生成 OpenAPI 文档的 VS Code 插件,支持一键同步到 Apifox 平台。

功能特性

  • 自动解析 Spring Boot Controller 中的 API 接口
  • 支持 @GetMapping、@PostMapping、@PutMapping、@DeleteMapping、@RequestMapping 等注解
  • 自动提取 @PathVariable、@RequestParam、@RequestBody 参数信息
  • 生成 OpenAPI 3.0.1 规范文档
  • 一键同步 API 文档到 Apifox 平台
  • 侧边栏 API 列表视图,支持搜索和分类
  • 支持跳转到 API 定义位置

安装

从 VS Code 插件市场安装

在 VS Code 插件市场搜索 wangrc.vs-apifox-helper 并安装。

从源码安装

# 克隆项目
git clone https://github.com/wangruchao-github/vs-apifox.git
cd vs-apifox

# 安装依赖
npm install

# 编译
npm run compile

# 打包为 .vsix 文件
npm run package

# 手动安装 .vsix 文件
# 在 VS Code 中按 Ctrl+Shift+P,输入 "Extensions: Install from VSIX..."

开发调试

# 安装依赖
npm install

# 编译项目
npm run compile

# 监听模式(开发时使用)
npm run watch

在 VS Code 中按 F5 启动调试,将打开一个新的扩展开发主机窗口加载插件。

使用教程

1. 配置 Apifox

首次使用需要配置 Apifox 的 API Key 和项目信息:

  1. 按 Ctrl+Shift+P 打开命令面板
  2. 输入 Spring API Helper: 配置Apifox
  3. 按提示输入:
    • API Key: 在 Apifox 个人设置中获取
    • 项目 ID: Apifox 项目的 ID
    • 项目名称: 自定义项目名称

配置将保存在工作区根目录的 .spring-api-helper.json 文件中。

{
  "apiKey": "",
  "projectId": "",
  "projectName": ""
}

2. 查看 API 列表

插件激活后,左侧活动栏会出现 Spring API Helper 图标,点击可查看当前工作区所有解析到的 API 接口。

  • 接口按 @apiFolder 注解分组显示
  • 支持搜索功能(搜索路径、方法、描述)
  • 点击接口可跳转到代码定义位置

3. 上传 API 文档到 Apifox

方式一:上传全部接口

  1. 按 Ctrl+Shift+P 打开命令面板
  2. 输入 Spring API Helper: 上传API文档到Apifox
  3. 等待上传完成

方式二:选择性同步

  1. 在左侧 API 列表中,点击接口前的选择按钮选中需要同步的接口
  2. 点击列表顶部的同步按钮(云上传图标)
  3. 等待同步完成

4. API 分组注解

在 Controller 类上添加 @apiFolder 注释来为 API 分组:

/**
 * @apiFolder 用户管理
 */
@RestController
@RequestMapping("/api/users")
public class UserController {
    // ...
}

5. API 描述注释

在方法上添加注释,将作为 API 的描述信息:

/**
 * 根据ID获取用户信息
 */
@GetMapping("/{id}")
public User getUserById(@PathVariable Long id) {
    // ...
}

支持的注解

类级别注解

  • @RestController - 标识为控制器类
  • @Controller - 标识为控制器类
  • @RequestMapping - 类级别的基础路径

方法级别注解

  • @GetMapping
  • @PostMapping
  • @PutMapping
  • @DeleteMapping
  • @RequestMapping

参数注解

  • @PathVariable - 路径参数
  • @RequestParam - 查询参数
  • @RequestBody - 请求体

命令列表

命令 说明
spring-api-helper.generateDocs 生成 API 文档
spring-api-helper.uploadApiDocs 上传 API 文档到 Apifox
spring-api-helper.configureApifox 配置 Apifox
spring-api-helper.refreshApiList 刷新 API 列表
spring-api-helper.searchApi 搜索 API
spring-api-helper.syncSelectedApis 同步选中的接口
spring-api-helper.gotoDefinition 跳转到定义

项目结构

src/
├── extension.ts              # 插件入口
├── parser/                   # Java 解析器(ANTLR4)
│   ├── SpringControllerParser.ts
│   ├── SpringControllerListener.ts
│   └── ...
├── providers/                # VS Code 提供器
│   ├── ApiTreeProvider.ts    # 侧边栏树视图
│   └── ApiDocumentProvider.ts
├── services/                 # 服务层
│   ├── ApifoxService.ts      # Apifox API 调用
│   └── ConfigService.ts      # 配置管理
├── converters/               # 格式转换器
│   └── OpenAPIConverter.ts   # OpenAPI 转换
└── types/                    # 类型定义
    └── index.ts

许可证

MIT License

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft