npm 包 list-endpoints-express 使用教程

阅读时长 7 分钟读完

在前端开发中,我们经常会使用 Express 框架来搭建服务器。但是随着项目规模的增大,服务器端点的数量也随之增加。当我们需要查看所有端点时,一一查找是十分费时费力的。这时候,npm 包 list-endpoints-express 就可以派上用场了。

list-endpoints-express 介绍

list-endpoints-express 是一个用于 Express 框架的 npm 包,可以自动遍历所有声明的路由,输出它们的 HTTP 方法、URL 和处理函数等信息。这个包可以帮助开发者更快地查找和调试所有的路由。

使用 list-endpoints-express 只需要在 Express 应用程序中使用以下代码:

其中,"app" 参数表示 Express 应用程序对象,"apiRouter" 是你的路由模块,所有的路由都被注册到了该模块对象上。使用上述代码,你可以输出所有的路由信息。

list-endpoints-express 的学习指导

除了用于输出路由信息,list-endpoints-express 还提供了其他的使用方式,可以让你更深入地了解它。

  1. 输出过滤器

你可以使用 listEndpoints(app, options) 函数来启用输出过滤器。options 是一个包含以下字段的对象:

  • prefix: 只输出指定前缀的模块路由信息;
  • skip: 需要过滤掉的模块名或路由的正则表达式;
  • allowDuplicates: 允许重复路由被记录,默认 false;

例如,在以下应用程序中:

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

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

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

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

我们只会看到 "/api" 的路由信息。

  1. 图形路由器

list-endpoints-express 还提供了一个图形路由器,通过浏览器访问,可视化展示你的路由信息。使用开源软件 Swagger UI,你可以用以下方式启用它:

其中 swaggerDocument 是一个 YAML 文件,包含了你的应用程序的路由信息,你可以通过以下方式生成它:

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

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

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

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

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

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

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

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

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

然后打开 http://localhost:8080/api-docs URL 就可以访问到 Swagger UI 页面了。

示例代码

下面是一个有路由的示例代码,假设这是一个返回随机数的 Express 应用程序:

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

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

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

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

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

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

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

输出结果如下:

总结

list-endpoints-express 是一个非常方便的 npm 包,可以帮助我们快速了解应用程序的路由信息。利用输出过滤器和图形路由器,可以更深入地了解和管理应用程序的路由。希望本文的介绍和示例代码可以帮助你更好地使用 list-endpoints-express。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60056bdb81e8991b448e585c

纠错
反馈