OpenAPI 规范定义了一种描述 API 的方式,包括了请求方法、请求参数、响应码等信息。对于开发人员来说,验证 OpenAPI 的正确性是必不可少的。而 npm 包 openapi-schema-validation 就可以帮助我们验证 OpenAPI 的正确性。
什么是 openapi-schema-validation
openapi-schema-validation 是一个用于验证 OpenAPI 规范的 npm 包,它提供了一个方法 validate(),用于比较一个对象是否符合 OpenAPI 规范。
安装 openapi-schema-validation
使用 npm 安装 openapi-schema-validation:
npm i openapi-schema-validation
使用 openapi-schema-validation
在使用 openapi-schema-validation 进行验证之前,你需要准备好 OpenAPI 的描述文件。下面是一个通过 Swagger Editor 生成的示例文件:
-- -------------------- ---- ------- -------- ----- ----- ------ ------ --- ------------ - ------ --- -- ----------- -------- -------- ----- -------- - ---- --------------------- ------ ------- ---- -------- --- - ---- -- ----- ---------- ------ ------------ ---------- -------- -------- ----------------- ------- ----- ----- ------ ----- --------------------------- ----------- -------- ----- ----- ------ ----------- --- ----- ------- ------- ----- ----- ----- ------ ------ ----- ------ ------ ----- ------ -------- ----- ------展开代码
该描述文件定义了一个 GET 请求 /users,返回一个包含 User 对象的数组(User 对象也在该文件中定义)。
下面是如何使用 openapi-schema-validation 验证该描述文件:
-- -------------------- ---- ------- ----- - -------- - - ------------------------------------- ----- --------- - --------------------------- ----- ---- - - --- -- ----- ----- ------- ------ --------------------- ------ ----------- -------- ----- ---- ------- -- -- ---------------- ----------------------------------------------------------------------------------- - ----------------- ------ -- --- ----- --------- -- --- --------- -展开代码
在这个示例中,我们使用 require 函数引入 openapi-schema-validation 包。然后我们加载了本地文件 api-spec.yaml,并从该文件的 paths、responses 和 content 等属性中,获取了 User 对象的 schema。最后,我们使用 validate() 方法来验证 user 对象是否符合该 schema。
总结
通过以上的介绍,你应该已经知道如何使用 openapi-schema-validation 包来验证 OpenAPI 规范。在实际开发中,建议你把 OpenAPI 规范写在文档中,并且使用 openapi-schema-validation 包来检查每次 API 请求和响应的格式是否正确,以确保 API 的可靠性和正确性。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5f32baa5dbf7be33b2566dc2