🔥NestJS 接口文档神器!nestjs-knife4j-plus 让 Swagger 颜值与功能双飞跃

作为 NestJS 开发者,你是否觉得原生 Swagger 文档不够直观?接口调试不够顺畅?今天给大家推荐一款宝藏插件 ------nestjs-knife4j-plus,让你的 API 文档瞬间升级,支持 Express 和 Fastify 双适配器,开发效率直接拉满!

✨ 核心亮点

双框架适配:完美支持 Express 和 Fastify 两种 HTTP 适配器,不用操心框架兼容性问题

高颜值 UI:基于 Knife4j 打造的可视化界面,比原生 Swagger 更清晰、更易用,接口分类、参数展示一目了然

无缝集成:与 @nestjs/swagger 深度兼容,原有 Swagger 配置无需大幅修改,快速接入

调试友好:支持在线接口调试、参数自动填充、响应格式化,开发测试一条龙

📦 极速安装

一行命令搞定基础安装,Fastify 用户额外补充依赖即可:

js 复制代码
// 基础安装(Express/Fastify通用)
npm install nestjs-knife4j-plus @nestjs/swagger 
// Fastify适配器需额外安装 
npm install @fastify/static

⚠️ 注意:@fastify/static 版本需与 Fastify 版本匹配,兼容性矩阵参考:

@fastify/static version Fastify version
^8.x ^5.x
^7.x ^4.x
^5.x ^3.x
^2.x ^2.x
^1.x ^1.x

🚀 快速上手

只需在原有 Swagger 配置基础上,添加 3 行代码即可启用:

typescript 复制代码
import { SwaggerModule, DocumentBuilder } from '@nestjs/swagger'
import { knife4jSetup } from 'nestjs-knife4j-plus'

async function bootstrap() {
  // 原有Swagger配置不变
  const options = new DocumentBuilder()
    .setTitle('Cats example')
    .setDescription('The cats API description')
    .setVersion('1.0')
    .addTag('cats')
    .build()
  const document = SwaggerModule.createDocument(app, options)
  SwaggerModule.setup('api', app, document)

  // 启用knife4j增强(关键代码)
  knife4jSetup(app, [
    {
      name: '2.0 version', // 文档版本名称
      url: `/api-json`,    // Swagger openapi JSON地址
    },
  ])

  await app.listen(3000)
}

启动项目后,访问 http://127.0.0.1:3000/doc.html,就能看到美化后的接口文档啦!

🌟 开源信息

目前插件已稳定迭代,issues 响应及时,无论是个人开发还是企业项目都能放心使用~ 赶紧安装试试,让你的 NestJS 接口文档告别单调,变得既好看又好用!

如果觉得有用,欢迎点赞收藏,转发给身边的 NestJS 开发者~ 有任何使用问题或建议,也可以去 GitHub 提交 issue 交流哦!

相关推荐
我是大猴子1 天前
Spring代理类为何依赖注入失效?
java·后端·spring
码事漫谈1 天前
手把手带你部署本地模型,让你Token自由(小白专属)
前端·后端
码农BookSea1 天前
ReAct:让大模型学会边想边做
后端·ai编程
码农BookSea1 天前
10分钟掌握 JSON-RPC 协议,面试加分、设计不踩坑
后端
凤年徐1 天前
C++手撕红黑树:从0到200行,拿下STL map底层核心
c++·后端·算法
IT_陈寒1 天前
Python的列表推导式里藏了个坑,差点让我加班到凌晨
前端·人工智能·后端
卷无止境1 天前
podman与docker的区别和生产环境最佳实践
后端
程途知微1 天前
ConcurrentHashMap线程安全实现原理全解析
java·后端
Mars酱1 天前
1分钟编写贪吃蛇 | JSnake贪吃蛇单机版
java·后端·开源
卷卷说风控1 天前
养了10年风控,今年开始养「虾」了
后端