OpenAPI 验证器
说明 这个项目是来自 openapi-图书馆 项目,因为目前该项目没有维持。 这个项目包含更新和安保修补,但理想的情况是,一旦它再次得到维护,就会被重新并入该项目.
通用代码 @nehuelsmann/jest-openapi (英语) 财务报告和审定财务报表 Chai OpenAPI 响应验证器
捐款额
如果你是来帮忙的 谢谢 看看这个 捐款 要开始的文件 .
安装
npm install --save-dev @ehuelsmann/openapi-validator
yarn add --dev @ehuelsmann/openapi-validator
导入
这艘货船和两艘 无害环境管理 (首选)和 常见JS 建筑,所以它在任何环境下都有效.
无害环境管理/类型脚本
import { makeApiSpec, makeResponse } from '@ehuelsmann/openapi-validator';
常见JS / JavaScript
const { makeApiSpec, makeResponse } = require('@ehuelsmann/openapi-validator');
使用量
此软件包提供了共享验证逻辑 @nehuelsmann/jest-openapi (英语) 财务报告和审定财务报表 @ehuelsmann/chai-openapi-应答-验证器,用于构建您自己的 OpenAPI 验证集成.
装入 OpenAPI 光谱
makeApiSpec 接受绝对文件路径或代表 OpenAPI (v2 或 v3) 文档的对象:
import { makeApiSpec } from '@ehuelsmann/openapi-validator';
// From an absolute filepath (YAML or JSON)
const spec = makeApiSpec('/absolute/path/to/openapi.yml');
// From an object
const spec = makeApiSpec({
openapi: '3.0.0',
info: { title: 'Example API', version: '1.0.0' },
paths: {},
});
验证答复
makeResponse 将 HTTP 响应从 axios, (中文(简体) ), supertest, (中文(简体) ), superagent,或 chai-http 因此,它可以被验证对装入的光谱:
import { makeApiSpec, makeResponse } from '@ehuelsmann/openapi-validator';
const spec = makeApiSpec('/absolute/path/to/openapi.yml');
// res is an axios, supertest, superagent, or chai-http response object
const response = makeResponse(res);
const validationError = spec.validateResponse(response);
if (validationError) {
throw new Error(validationError.message);
}