Swagger Express 中间软件
Swagger 2.0 中间软件和为 Express.js 所模拟
特征
-
在 JSON 或 YAML 中支持 Swagger 2.0 规格
Swagger Express 中间软件的使用 斯瓦格- 帕塞尔 以解析、验证和调试Swagger文件。 您甚至可以使用 :$ref指针. -
彻底测试
超过1000个单位测试和集成测试,编码覆盖率达到100%. 测试过 超过1500个真实世界的API 来自谷歌,微软,Facebook,Spotify等. 所有测试都在Mac,Linux和Windows上运行,使用所有LTS版本的节点. -
模拟中间软件
完全功能模拟 用于您 API 中每个操作的执行,包括数据持续性,所有操作 零码! 这是一个很好的方法来测试你的API 当你写它, 或者快速演示和POC。 你甚至可以用自己的逻辑和数据来扩展模拟中间软件,以填补任何空白. -
元数据中间软件
以斯瓦格定义中的所有相关信息对每项请求进行注释. 路径 操作 参数 安全要求 都很容易进入req.swagger。 。 。 . -
解析请求中间软件
根据您的 Swagger API 定义,分析收到的请求,并将所有数据转换为正确的数据类型. -
验证请求中间软件
确保每个请求都符合您的 Swagger API 定义,或者在需要时返回相应的 HTTP 错误代码 。 当然,你可以捕捉到任何验证错误,并随意处理. -
CORS 中间软件
在每个请求中添加相应的 CORS 头并自动响应 CORS 飞行前请求,这些都符合您的 Swagger API 定义 . -
文件中间软件
以 JSON 或 YAML 格式服务 Swagger API 文件, 这样可以使用前端工具, 如 Swagger 用户界面, (中文(简体) ), Swagger 编辑器,以及 邮差。 。 。 .
安装和使用
使用 无。 。 。 .
npm install @apidevtools/swagger-express-middleware
那就用在你们身上 节点.js 像这样的脚本 :
const express = require('express');
const createMiddleware = require('@apidevtools/swagger-express-middleware');
let app = express();
createMiddleware('PetStore.yaml', app, function(err, middleware) {
// Add all the Swagger Express Middleware, or just the ones you need.
// NOTE: Some of these accept optional options (omitted here for brevity)
app.use(
middleware.metadata(),
middleware.CORS(),
middleware.files(),
middleware.parseRequest(),
middleware.validateRequest(),
middleware.mock()
);
app.listen(8000, function() {
console.log('The PetStore sample is now running at http://localhost:8000');
});
});
样本行走( L)
Swagger Express Middleware 有两个样本使用 Swagger 宠物存储 API。 。 。 .
样本1
这个样本显示了Swagger Express Middleware最简单的用法. 它只是创建了一个新的Express应用程序,并在不改变任何选项的情况下添加了所有的Swagger中间软件,并且不添加自定义的中间软件.
样本2
这个样本展示了Swagger Express Middleware的一些更高级的功能,例如设置了几个选项,初始化了模拟数据存储,并增加了自定义的中间软件逻辑.
捐款
我欢迎任何贡献、增强和错误修正. 打开一个问题 关于 GitHub 和 提交拉动请求。 。 。 .
建筑物/试验
要在您的计算机上本地构建/测试项目:
-
克隆这个还原
git clone https://github.com/APIDevTools/swagger-express-middleware.git -
安装依赖关系
npm install -
运行测试
npm test -
运行软件样本
npm start
许可证
Swagger Express Middleware 是100%的自由和开源软件,在 麻省理工学院许可证随意使用.
这个软件包是 树件如果你把它用于生产,那么我们要求你 给世界买一棵树 感谢我们的工作。 将会为当地家庭创造就业机会.
谢谢
感谢这些优秀的公司对开源开发商的支持 QQ