【Node.js】自动生成 API 文档

本文介绍了如何在Node.js项目中利用swagger-ui-express直接配置API文档,以及配合swagger-jsdoc通过JSDoc注解实现接口文档的自动更新。分别展示了两种方法的示例代码。
摘要由CSDN通过智能技术生成

 

目录

1、直接使用swagger-ui-express

2、配合swagger-jsdoc


 

如何在Node.js项目中使用 Swagger 来自动生成 API接口文档,使用生成方式有很多种。本文基于swagger-jsdoc+swagger-ui-express快速实现

1、直接使用swagger-ui-express

// 方便来浏览和测试api
npm i swagger-ui-express
 

 

import { Express } from 'express';
import swaggerUi from 'swagger-ui-express';
const options = {
  openapi: "3.0.3",
      info: {
      title: '文档相关接口',
      version: '1.0.0',
      description: 'API documentation using Swagger',
  },
  tags: [{
    name: "develop",
    description: "开发者站点管理接口",
  }],
  paths: {
    "/develop": {
      "get": {
      "tags": ["develop"],
      "description": "获取文档列表!",
          "responses": {
            "200": {
              "description":"返回字符串数组"
            }
          }
      }
    }
  }
}
const swaggerInstall = (app: Express) => {
  app.use(
    '/apidoc',
    swaggerUi.serve,
    swaggerUi.setup(options)
  );
};
export { swaggerInstall };

image.png

直接使用配置去生成接口文档,更改接口的时候需要同时去更改配置,会相对麻烦点。这时候就可以使用swagger-jsdoc,通过在接口上面注释信息后,就可以自动更新对应的api接口文档,其本质是通过读取该接口对应的注释,然后再转成对应的配置。

2、配合swagger-jsdoc

  • JSDoc 注释是一种特殊的注释语法,用于为 JavaScript 代码添加文档化和类型提示信息。它是基于 JSDoc 规范的一部分,旨在提供一种标准的方式来描述代码的结构、功能和类型信息

  • 作用:接口文档注释有更新,对应的api文档会同步更新。确保接口变更,配置会同时去更改

npm i swagger-jsdoc
 

 

import { Express } from 'express';
import path from 'path';
import swaggerDoc from 'swagger-jsdoc';
import swaggerUi from 'swagger-ui-express';

const swaggerOptions = {
  swaggerDefinition: {
    info: {
      title: '文档相关接口',
      version: '1.0.0',
      description: 'API documentation using Swagger',
    },
  },
  apis: [path.join(__dirname, './routes/*.ts')], // 指定包含 API 路由的文件或文件夹路径
};
const swaggerInstall = (app: Express) => {
  app.use(
    '/apidoc',
    swaggerUi.serve,
    swaggerUi.setup(swaggerDoc(swaggerOptions))
  );
};
export { swaggerInstall };
 

 

//在对应的接口,注释对应的文档
import express from 'express';
import {
  developGetFile,
  developGetFileList,
} from '../controllers/developControllers';
const router = express.Router();
/**
 * @openapi
 * /develop:
 *   get:
 *     tags: [develop]
 *     description: 获取文档列表!
 *     responses:
 *       200:
 *         description: 返回字符串数组.
 */
router.get('/', developGetFileList);

 

  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
REST API 是一种架构风格,用于开发网络服务。Node.js 是一个基于 JavaScript 运行时的开发平台,可以用于构建高效且可扩展的服务器端应用程序。因此,使用 Node.js 来开发 REST API 是一种常见的选择。 借助 Node.js 的特性,我们可以轻松地构建 REST API。使用 Node.js 的异步非阻塞 I/O 模型,可以提供高度并发的能力,使服务器能够处理大量的请求。此外,Node.js 的事件驱动架构也使得处理请求变得更加高效。 在使用 Node.js 开发 REST API 时,我们可以使用许多流行的框架和库,例如 Express、Koa 或 Hapi。这些框架提供了许多便捷的功能和中间件,帮助我们搭建和组织 REST API 的路由和业务逻辑。 Node.js 还可以与许多数据库进行集成,如 MongoDB、MySQL、PostgreSQL 等。这使得我们可以轻松地与数据库交互,存储和检索数据。同时,我们还可以使用其他第三方库和工具来处理认证和授权、API 文档生成、日志记录等常见的开发任务。 通过结合 Node.js 和 REST API,我们能够构建出灵活、可扩展且高性能的服务器端应用程序。这种架构模式使得不同的客户端可以通过 HTTP 协议与服务器进行通信,从而实现前后端的分离和独立开发。并且,REST API 的设计原则和规范使得不同的团队能够更好地协作开发,提高开发效率。 总而言之,使用 Node.js 来开发 REST API 是一种强大而灵活的方式。借助 Node.js 的优势和丰富的生态系统,我们可以轻松构建出高性能、可扩展且易于维护的 REST API

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值