bayfrontmedia / openapi-parser
PHP OpenAPI规范解析器
v1.0.1
2024-09-10 01:40 UTC
Requires
- php: ^8.0
- ext-yaml: *
- bayfrontmedia/php-array-helpers: ^2.0
- bayfrontmedia/php-validator: ^4.0
This package is auto-updated.
Last update: 2024-09-10 01:40:47 UTC
README
PHP OpenAPI规范解析器。
此库支持OAS 3.1,并解决内部OpenAPI规范引用。然后可以将OpenAPI规范解析成PHP对象。
许可证
该项目是开源的,可在MIT许可证下使用。
作者
要求
- PHP >= 8.0
安装
composer require bayfrontmedia/opanapi-parser
用法
OpenApiSpec
类用于将JSON和YAML文件解析成数组,并解决任何内部引用。
然后可以使用解析后的规范数组来创建一个OpenApiObject
实例。所有OpenAPI对象类实例都实现了ObjectInterface
。
ObjectInterface
包括一个validate()
方法,用于验证对OpenAPI规范的符合性,但所有验证函数目前都很基础,不应依赖。建议使用已测试为有效的OpenAPI规范。
注意:根据OpenAPI规范的大小,
resolve
方法可能相当慢。强烈建议将解析后的规范保存/缓存以用于生产。
示例
$spec = OpenApiSpec::parseJson(file_get_contents('openapi-specification.json')); // Parse JSON $spec = OpenApiSpec::resolve($spec); // Resolve internal references (this file should be saved/cached) $openapi = new OpenApiObject($spec); // Create new OpenApiObject using a resolved and valid OpenAPI specification // Get PathItemObject for a single path $path = $openapi->getPath('/auth/login'); $request = $path->getOperation($path::OPERATION_POST);
更多文档即将到来。