跳到主要内容

内置插件

@keq-request/cli 提供了丰富的内置插件,帮助你从 OpenAPI 文档生成高质量的 TypeScript 代码。 插件分为两类:需要手动配置的可选插件和自动启用的核心插件。

可选插件

以下插件需要在配置文件中手动添加才会生效,你可以根据项目需求选择性使用。

插件名称功能说明
BodyFallbackPlugin将未定义在 OpenAPI 文档中的请求参数添加到请求体中,而不是丢弃
ChineseToPinyinPlugin将 OpenAPI 文档中的中文标识符自动转换为拼音
EslintPlugin代码生成后自动运行 ESLint 格式化 (eslint --fix)
PrettierPlugin代码生成后自动运行 Prettier 格式化 (prettier --write)
OverwriteOperationIdPlugin根据自定义规则覆盖 OpenAPI 文档中的 operationId 字段
OverwriteAdditionalPropertiesPlugin强制未声明 additionalProperties 的 object schema 设置为 additionalProperties: false
OverwriteQueryOptionsPlugin自定义 URL Query 参数的格式化方式
LintSchemaPlugin使用 JSON Schema Draft 2020-12 meta-schema 校验 OpenAPI 文档中的 Schema 合规性
UseValibotPlugin使用 Valibot 生成 components/schema
MockPlugin向 Schema 注入 mock 数据提示,配合 keq mock 生成更真实的模拟数据
SpringdocCompatPlugin修复 SpringDoc 生成文档中嵌套 extensions 对象的兼容性问题
OverwriteSchemaNamePlugin根据自定义规则重命名 components.schemas 中的 Schema 名称

核心插件

以下插件由 CLI 根据配置自动启用,无需手动配置。它们负责文档下载、代码生成等核心功能。

插件名称功能说明
DownloadHttpFilePlugin从 HTTP/HTTPS 地址下载 OpenAPI 文档
DownloadLocalFilePlugin从本地文件系统加载 OpenAPI 文档
DownloadByBashPlugin通过 bash 执行脚本文件获取 OpenAPI 文档
DownloadByShPlugin通过 sh 执行脚本文件获取 OpenAPI 文档
GenerateDeclarationPlugin生成 TypeScript 类型声明文件
GenerateMicroFunctionPlugin生成函数形式的 API 调用代码
GenerateNestjsModulePlugin生成 NestJS 模块代码
InitialPlugin核心插件,负责根据配置文件加载其他插件
ShakingPlugin移除 OpenAPI 文档中未被使用的 Schema 定义
TerminalSelect提供终端交互式选择功能