@deadendjs/swagger-jsdoc

中文文档
8.2.0发布于 2026/04/27MITTypeScriptCommonJS近 30 天下载 1.1万

基于 JSDoc 生成 swagger doc

中文使用文档
文档目录6 节
  1. 开始
  2. 系统要求
  3. 安装
  4. 支持的规格
  5. Swagger 文件的验证
  6. 文档

斯瓦格 - 日记

[注] 这个叉子大多是用来不断更新依赖关系,因为原来的回波已经一段时间没有活动了. 但如果你发现问题,可以自由提交带有破解测试的PR(如果是代码问题)并固定.

这个图书馆读取你的 联合来文文件-附加说明的源代码并生成一个 OpenAPI (Swagger) 规格。 。 。 .

Quality Gate Status CI

开始

想象有这样的 API 文件:

/**
 * @openapi
 * /:
 *   get:
 *     description: Welcome to swagger-jsdoc!
 *     responses:
 *       200:
 *         description: Returns a mysterious string.
 */
app.get('/', (req, res) => {
  res.send('Hello World!');
});

图书馆将接收 @openapi (或 @swagger),配置如下:

const swaggerJsdoc = require('@deadendjs/swagger-jsdoc');

const options = {
  definition: {
    openapi: '3.0.0',
    info: {
      title: 'Hello World',
      version: '1.0.0'
    }
  },
  apis: ['./src/routes*.js'] // files containing annotations as above
};

const openapiSpecification = await swaggerJsdoc(options);

结果 openapiSpecification 将是一个 摇摆工具- 符合(并经验证)规格.

swagger-jsdoc example screenshot

系统要求

  • 节点.js 20.x或以上

你正在观看 swagger-jsdoc v8,发布于CommonJS模块系统.

安装

npm install @deadendjs/swagger-jsdoc --save

支持的规格

  • 打开API 3.x
  • 斯瓦格2号
  • AsyncAPI 2. 0 (英语)

Swagger 文件的验证

默认 swagger-jsdoc 试着把所有文件都解析到最好的能力 如果您想要使用设置选项旗的验证失败, 可以指定一个错误 failOnErrors 改为 true。例如,如果您想要验证您的 swagger docs 使用单位测试进行验证,则此功能是有用的.

const swaggerJsdoc = require('@deadendjs/swagger-jsdoc');

const options = {
  failOnErrors: true, // Whether or not to throw when parsing errors. Defaults to false.
  definition: {
    openapi: '3.0.0',
    info: {
      title: 'Hello World',
      version: '1.0.0'
    }
  },
  apis: ['./src/routes*.js']
};

const openapiSpecification = await swaggerJsdoc(options);

文档

Github 页面上的文档

版本与发布记录

@deadendjs/swagger-jsdoc 共发布 6 个版本,首次发布于 2025/10/30;过去 12 个月发布了 4 个版本。

版本发布日期距今
8.2.0latest2026/04/276 个月前
8.1.22026/04/236 个月前
8.1.12026/03/137 个月前
8.1.02026/03/128 个月前
8.0.12025/11/061 年前
8.0.02025/10/301 年前

关于 @deadendjs/swagger-jsdoc 的常见问题

@deadendjs/swagger-jsdoc 是什么?

基于 JSDoc 生成 swagger doc

如何安装 @deadendjs/swagger-jsdoc?

在项目目录运行 npm install @deadendjs/swagger-jsdoc,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 swagger-jsdoc,可以用 npx swagger-jsdoc 直接运行。

@deadendjs/swagger-jsdoc 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@deadendjs/swagger-jsdoc 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@deadendjs/swagger-jsdoc 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=20.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@deadendjs/swagger-jsdoc 可以商用吗?

@deadendjs/swagger-jsdoc 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@deadendjs/swagger-jsdoc 的下载量有多少?

根据 npm 官方下载统计,@deadendjs/swagger-jsdoc 在 2026/10/12 – 2026/11/10 这 30 天内被下载 10,520 次,日均约 351 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@deadendjs/swagger-jsdoc 还在维护吗?

最新版本 8.2.0 发布于 2026/04/27(6 个月前);至今共发布 6 个版本,其中过去 12 个月发布了 4 个;首次发布于 2025/10/30。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。