太Out了!2025年前端写接口还从swagger复制粘贴吗

95 阅读3分钟

太Out了!2025年前端写接口还从swagger复制粘贴吗

原创 cnvoid 极客早班车 2025年04月01日 16:59 广东

小编今天发现了一个神仙前端工具, 能直接将 swagger 文档直接生成可执行的 Typescript代码。 图片

使用 openapi-typescript-cli 快速生成 TypeScript 类型定义

在现代前端开发中,与后端 API 进行交互时,确保数据类型的正确性至关重要。openapi-typescript-cli 是一个开源工具,专门用于从 OpenAPI 规范生成 TypeScript 类型定义,帮助开发者减少手动维护类型的工作量,并提高代码的可维护性和安全性。

项目简介

openapi-typescript-cli 是由 cnvoid(www.zhuty.com) 维护的一个开源 CLI 工具,能够根据 OpenAPI 3 规范自动生成 TypeScript 类型定义。它的核心目标是让前端开发者更方便地与后端 API 进行类型安全的交互。

主要特性

  • 自动生成请求层代码:根据 OpenAPI 规范自动生成 TypeScript 请求层代码,减少手动编写的工作量。
  • 高内聚、低耦合:生成的代码遵循高内聚、低耦合的设计原则,避免了其他工具可能存在的代码耦合性过高的问题。
  • 灵活的参数处理:支持处理 params(路径参数)、data(请求体参数)和 query(查询参数),适应不同的 API 调用需求。

安装与使用

安装

你可以使用 npm 或 yarn 进行全局安装,也可以在项目中本地安装:

# 全局安装
npm install -g openapi-typescript-cli
# 或者在项目中安装
npm install --save-dev openapi-typescript-cli

#  使用指南

$ openapi-typescript-cli -h
Usage: openapi-typescript-cli [options]

openapi 生成 api 请求层代码.
推荐在 src/api 目录执行生成代码命令, 生成的代码会在当前目录下生成 api 请求文件.
作者: zhuty.com @2025

Options:
  -V, --version            output the version number
  -f, --apifile <type>     api json 文件路径
  -u, --url <type>         api json文件url地址, 通常为http://domain:port/v3/api-docs
  -n, --name <type>        输出文件名称, 默认为 index. 生成文件为 <name>.d.ts, <name>.ts, request.js (default: "index")
  -m, --middleware <type>  中间件文件路径, 用于修改生成代码的模块名称和函数名称
  -h, --help               display help for command

生成 TypeScript 请求代码

安装完成后,你可以使用以下命令从 OpenAPI 规范文件中生成 TypeScript 请求代码:

openapi-typescript-cli -u http://your-api-domain:port/v3/api-docs -n api

其中:

  • -u 指定 OpenAPI 规范的 URL 或本地 JSON/YAML 文件路径。
  • -n 指定生成的 API 文件名,如 api.ts

生成的 api.ts 文件将包含所有 API 端点的请求封装,前端开发者可以直接在代码中使用这些封装的方法进行 API 调用。

示例:使用生成的代码调用 API

import { roleManage } from "./api";// 删除角色示例

async function deleteRoleExample() { 
    const res = await roleManage.deleteRole([12]); 
    console.log(res);
}
说明:
  • params:可以通过路径参数(如 id)传递。
  • query:可以使用查询参数传递,如 ?page=1&size=10
  • data:可以通过 requestBody 传递 JSON 数据。

适用场景

  • 前端与后端解耦:通过 OpenAPI 规范自动生成类型,确保前端代码与后端接口同步。
  • 提升开发效率:避免手动编写 API 类型,提高代码复用性。
  • 减少类型错误:TypeScript 的类型检查可以在开发阶段发现 API 数据结构的错误。

总结

openapi-typescript-cli 是一个实用的 TypeScript 类型生成工具,能够大幅减少手动维护 API 类型的工作量,并提升前端开发的安全性和效率。对于使用 OpenAPI 规范的前后端分离项目,它是一个值得尝试的工具。

如果你对这个项目感兴趣,可以在 GitHub 上查看它的源码:www.npmjs.com/package/ope…