简介
swagger-ui-restify 是一款便于 API 开发的 NPM 包,可以通过它生成接口的文档和 API 前端的交互式页面。使用 swagger-ui-restify 可以使 API 文档的可读性和可维护性提高许多倍,是前端开发的绝佳工具。
安装
使用 npm 命令进行安装:
npm install swagger-ui-restify --save-dev
使用
引入 swagger-ui-restify,在项目的 app.js 文件中添加以下代码:
-- -------------------- ---- ------- ----- ------- - ------------------- ----- --------- - ------------------------------ ----- ---- - ------------------- ----- -- - -------------- ----- ------ - ---------------------- ----- ---- ------- --- ----- ----------- - ------------------ ----- --------------- - ------------------------------------------ --------- ----------- ---------------- -------------------------------- - --------- ----- ------------- --------- - ----------- -- --
这里的关键点是引入了 yaml 以及 fs 模块,以读取 yaml 文件。
swaggerUi.setup 中的参数说明如下:
explorer
:是否显示 API 接口列表,开启后可通过左侧列表栏查看所有 API 接口,否则只能通过右侧搜索栏查找。swaggerUiDir
:SwaggerUI 前端静态资源的路径,这里使用了 swagger 官方提供的样式,保存在项目中的 swagger 目录下。
示例
以下是一个简单的示例功能:实现展示一个 todoList。
-- -------------------- ---- ------- -------- ----- ----- -------- ------- ------ -------- --- ----- -------------- --------- ------- -------- - ---- ----- - ----- -------- ------------ ---------- ----- -------- ------------ ----- ----- ------ --------- - -- - ---- ----------- --- ----- ------- ------- ----- ------------ -- -- --- ---- ----- ----- ------ ------------ ---- -- --- ---- ------ ------ ---- ----- - -------- -------- --- --- ----- --------- - ---------------- ---------- ---- ------------ ---- -- ----- ------- ----- ----- ------ ----- -------------------- ----- ----- - -------- -------- ------ - ---- ----------- - --- ---- ----- ---- ------- ----- -------------------- --------- ---- --------- - ---------------- ---------- ---- ------------ ------- ---- ------- ----- --------------------
在项目的 app.js 文件中添加以下代码:
const todoController = require("./controllers/TodoController"); server.get("/todo", todoController.index); server.post("/todo", todoController.create);
在 controllers/TodoController.js 文件中,可以通过对 todo 数据的增删改查实现接口的实际功能。
-- -------------------- ---- ------- ----- ----- - --- -------------- - - ------ ------------- ---- ----- - ------ ---------------- -- ------- ------------- ---- ----- - ----- ---- - - --- ------------ ----- ------------- -- ----------------- ------ --------------- - --
接下来,在 index.js 文件中调用 server.listen 来启动 API 服务。
server.listen(3000, function() { console.log("API Server Listening on port 3000"); });
指导意义
学会使用 swagger-ui-restify 可以让前端开发更加高效和准确,文档的规范化还可以让后续的团队拓展开发更加轻松。同时,在编写文档的时候,要注意各个参数的含义以及正确的书写格式。使用 swagger-ui-restify 可以大幅提高团队的协作效率和项目的开发速率,是一款值得推荐的工具。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60059e3481e8991b448ed4af