解放双手!通过 genapi 直接生成 API 代码和类型注释。

在日常的前端开发中,从不会缺少与后端的对接,在这个阶段总会少不了和后端接口的 api 编写,容易出错不说,和后端掰头结果发现是自己参数写错的情况也不计少数。

简介

genapi 通过 Swagger OpenApi(v2~v3),如果你的后端使用 Swagger 展示文档,那么相对应的,你也可以用于生成接口与类型注释。genapi 目前支持多种请求库的生成(axios、fetch、ky、got、ofetch)你可以根据你的需求安装。

  • swag-axios-ts
  • swag-axios-js
  • swag-fetch-ts
  • swag-fetch-js
  • swag-ky-ts
  • swag-ky-js
  • swag-got-js
  • swag-got-js
  • swag-ofetch-js
  • swag-ofetch-js

生成效果:

使用

在项目文件夹中本地安装:

sh 复制代码
pnpm add @genapi/cli @genapi/swag-axios-ts -D
# Or Yarn
yarn add @genapi/cli @genapi/swag-axios-ts --dev

接下来首先我们得找到后端的 swagger 文档地址(一般都会部署)

打开 F12,在 Network 中找到请求接口 JSON API 的地址:

在你的项目目录中创建 genapi.config.ts 文件,并添加以下内容:

ts 复制代码
import { defineConfig } from '@genapi/config'

const config = defineConfig({
  pipeline: 'swag-ofetch-ts',
  input: 'https://petstore.swagger.io/v2/swagger.json',
  output: 'src/apis/index.ts',
})

export default config

执行生成脚本:

sh 复制代码
pnpm genapi

小结

通过 genapi 可以减少日常开发中编写 api 的重复工作,可以让你专注于业务的实现,提高开发效率!

genapi 还支持更多用例,具体在 github 项目主页页中查看。

相关推荐
学长毕设38 分钟前
基于SpringBoot的野生动物公益保护平台设计与实现-附源码
java·spring boot·后端
啾咪orJIUMI1 小时前
Vue 3 + 高德地图封装实战:点位、区域、Loca 流光与 Vue 信息窗体
前端·vue.js
掘金者阿豪1 小时前
AI数据库不只是向量检索:从数据语义到库内智能计算的技术演进
前端
梦里寻码1 小时前
我用 NestJS + Vue3 写了一套完整的研发管理系统(58 表 / 229 API / 130 项断言,全开源
前端·后端·算法
FRing031 小时前
vue2干货总结8(路由模块封装、router-link、声明式导航、路由重定向、编程式导航)
开发语言·前端·vue.js·vue2
鶴哥只手遮天1 小时前
《Redis 8.10.3 深度剖析》系列 ·第 10 章 Hash 一:`listpack`、`hashtable` 与 `LISTPACK_EX`
redis·后端·开源
johnjincaaaa1 小时前
WebAssembly 逆向实战:从 0 搞懂猿人学第 15 题
后端
SameX1 小时前
HarmonyOS ArkUI Dialog 复用 用 @CustomDialog + enum type 做多类型统一管理的做法
前端
Gopher_HBo1 小时前
Go CPU 剖析:四角色白话机制 + 实测实验
后端
猿人谷1 小时前
Surrogate Model:让进化算法学会“预测”,为什么它正在成为智能优化的重要技术?
后端·算法·架构