npm 包 swagger-watcher 使用教程

什么是 swagger-watcher?

swagger-watcher 是一个 Node.js 应用程序,可以通过监视和更新自己定义的 Swagger 规范来生成和维护 API 文档。

安装和使用

安装

npm install -g swagger-watcher

使用

在使用之前,首先需要设置一个配置文件(以 config.json 为例)。

-
  ------- -----
  --------- -
    -
      ------- ------
    -
  --
  -------------- ----------------
-
  • port : 服务端口号
  • filter: 过滤器,用于排除不需要监视的 paths 或者 methods
  • swaggerFile : Swagger 规范文件的路径。

接下来,我们可以运行 swagger-watcher

swagger-watcher --conf ./config.json

现在我们可以使用浏览器访问 http://localhost:8080 来查看自动生成的文档。

细节解析

配置文件

  • port

    服务端口号,默认值为 8080

  • filter

    过滤器,用于排除不需要监视的 paths 或者 methods。

    -
      --------- -
        -
          -- ---------------
          ------- ------
        --
        -
          -- ----------
          --------- --------
        -
      -
    -
  • swaggerFile

    Swagger 规范文件的路径。如果文件发生变化,swagger-watcher 将自动重新生成 API 文档。

自定义标题

默认情况下,标题将是 Swagger 规范的 title 字段。我们也可以用 title 字段来自定义标题。

-
  -------- --------
  ------- -----
  --------- -
    -
      ------- ------
    -
  --
  -------------- ----------------
-

过滤器详解

过滤器可以用来排除某些 paths 或者 methods。

-
    --------- -
      -
        -- ---------------
        ------- ------
      --
      -
        -- ----------
        --------- --------
      -
    -
  -

filter 是一个数组,每个数组项都是一个对象。对象可以包含两个属性:

  • name : path 的名字
  • method : method 的名字

同时,namemethod 可以使用通配符:

  • * :匹配任意的名字或者方法。
  • ** :匹配任意路径和方法。

过滤规则会先根据 name 进行过滤,接着才是 method。也就是说,如果一个 path 的名字匹配了,但是 method 不匹配,这个 path 仍然会被包含在文档中。

示例

我们可以使用 swagger-watcher 生成文档。这里我们使用 https://petstore.swagger.io/v2/swagger.json 作为 Swagger 规范文件。

安装

npm install -g swagger-watcher

运行

swagger-watcher --port=3000 --swaggerFile=https://petstore.swagger.io/v2/swagger.json

结果

现在可以在浏览器中查看自动生成的文档:http://localhost:3000

总结

本文简要介绍了 swagger-watcher 的功能和使用方法,并对其中的细节进行了解析和详细的说明。希望读者可以通过本文对 swagger-watcher 有一个更全面、了解。在实际项目中,使用 swagger-watcher 可以大大简化文档的维护,提高文档的实时性,为项目管理带来不少的便利。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/80397


猜你喜欢

  • npm 包 swagger-ui-dist 使用教程

    Swagger 是一种简单、强大的 RESTful API 的文档在线自动生成+功能测试的工具,使API文档编写变得非常简单;Swagger-UI 是 Swagger 可视化渲染工具之一,可以帮助开发...

    5 年前
  • npm 包 stonehenge-git-repo 使用教程

    前言 在前端开发中,我们经常需要从 git 仓库中拉取代码来进行开发,但是在手动执行 git clone 命令拉取代码时,往往需要输入账号密码等信息,这样就需要不断输入这些敏感信息,让开发变得不方便。

    5 年前
  • npm 包:Maven 使用教程

    作为前端开发人员,经常需要使用工具和库来简化自己的工作。npm 和 Maven 都是流行的包管理工具,但它们在不同的语言和技术栈中使用。本文将介绍如何使用 Maven 打包和发布 Java 库,并将其...

    5 年前
  • npm 包 egg-rpc-generator 使用教程

    简介 egg-rpc-generator 是一个 npm 包,它提供了一种基于 egg.js 框架的 RPC 代码生成器,通过在 egg.js 工程中安装使用,可以快速生成 RPC 接口的代码。

    5 年前
  • npm 包 egg-rpc-base 使用教程

    前言 在前端工作中,经常会用到各种 npm 包来快速实现项目的需求。其中 egg-rpc-base 包是一款常用的 Node.js 框架 egg.js 下的一个插件,用于构建基于 egg.js 的分布...

    5 年前
  • npm 包 sofa-rpc-node 使用教程

    概述 sofa-rpc-node 是一个基于 Node.js 的 RPC 框架。它可以轻松地帮助开发者将后端服务暴露为 RPC 接口,同时也支持对多个 RPC 接口进行管理,提供了丰富的监控和治理功能...

    5 年前
  • npm 包 tslint-midway-contrib 使用教程

    在前端应用中,保持良好的代码规范和代码质量是非常重要的,而 TypeScript 是一种支持类型检查的 JavaScript 扩展语言,为开发者在开发过程中提供了更好的代码规范和代码质量保障。

    5 年前
  • npm 包 zonetk-core 使用教程

    概述 zonetk-core 是一个基于 JavaScript 的前端开发库,提供了一系列优秀的工具类和函数,帮助开发者快速解决前端开发中的一些通用问题,是前端开发中不可多得的利器之一。

    5 年前
  • npm 包 zipkin-instrumentation-typeorm 使用教程

    在前端开发中,我们经常会遇到需要监控和追踪 API 调用的情况。Zipkin 是一个开源的分布式跟踪系统,能够帮助我们监控和追踪 API 调用的情况。而 zipkin-instrumentation-...

    5 年前
  • npm 包 typeorm 使用教程

    介绍 TypeORM 是一个非常流行的 TypeScript 编写的 Object Relational Mapping (ORM) 框架,用来在 NodeJS 中操作 SQL 和 NoSQL 数据库...

    5 年前
  • npm 包 nfw-core 使用教程

    什么是 nfw-core nfw-core 是一个基于 Node.js 平台的前端开发框架。它提供了一套完整的前端开发解决方案,包括组件开发、模块化管理、打包压缩等功能。

    5 年前
  • npm 包 fullarray-search 使用教程

    简介 fullarray-search 是一个用于在 JavaScript 中全局搜索数组元素的 npm 包。它可以帮助开发者更方便地处理数组。 在日常开发中,开发者经常需要对数组中的元素进行搜索和操...

    5 年前
  • npm 包 ts-node-dev 使用教程

    在前端开发中,我们经常需要使用 TypeScript 编写代码。而 ts-node-dev 是一个优秀的 npm 工具,可以方便开发人员在开发过程中实时编译 TypeScript 代码,并自动重启 N...

    5 年前
  • npm 包 aral 使用教程

    简介 aral 是一款基于 WebGL 和 Three.js 的 Web3D 场景渲染器,支持高效的对象管理和场景管理,提供了许多常用的渲染效果并且易于扩展。 安装 在进行 aral 的安装之前,您需...

    5 年前
  • npm 包 hostile 使用教程

    在前端开发的过程中,我们可能会遇到需要在本地进行域名解析的情况。这时候,npm 包 hostile 就可以派上用场了。 什么是 hostile? hostile 是一个可以为本地的 hosts 文件添...

    5 年前
  • npm 包 readline-promise 使用教程

    什么是 readline-promise? readline-promise 是一个 Node.js 的 readline 模块的封装,让我们可以用 promise 风格来处理命令行输入。

    5 年前
  • npm 包 slib 使用教程

    什么是 slib? slib 是一个适用于前端开发的 npm 包,它提供了一些常用的 JavaScript 工具函数,可以方便地帮助开发者进行项目开发。 slib 的安装 首先需要在终端中使用 npm...

    5 年前
  • npm 包 phantomjscloud-lite 使用教程

    在前端开发中,我们需要进行各种处理,例如页面截图、爬虫、自动化测试等等。而这些任务可以通过利用 PhantomJS 来实现。PhantomJS 是一个基于 WebKit、使用 JavaScript 编...

    5 年前
  • npm 包 phantomjscloud-examples 使用教程

    前言 随着前端技术的不断发展,现在越来越多的前端工具和库出现,能够大幅提高前端工作效率。其中,npm 包是一个非常重要的前端技术工具,它可以让我们快速、便捷地使用众多的开源工具和库。

    5 年前
  • npm 包 phantomjscloud 使用教程

    简介 PhantomJS 是一个基于 WebKit 的服务器端 JavaScript API,它支持无头浏览器的自动化,用于网页截图、页面渲染、网络监测等任务。PhantomJS 不支持 JavaSc...

    5 年前

相关推荐

    暂无文章