membrane / openapi-reader
2.0.1
2024-04-25 14:02 UTC
Requires
- php: ^8.1.0
- cebe/php-openapi: ^1.7
Requires (Dev)
- infection/infection: ^0.27.0
- mikey179/vfsstream: ^1.6.7
- phpstan/phpstan: ^1.10.56
- phpunit/phpunit: ^10.1
- squizlabs/php_codesniffer: ^3.7
This package is auto-updated.
Last update: 2024-08-25 15:43:17 UTC
README
这个库旨在与其他 Membrane 库一起使用。
它使用一些额外的验证包装了 php-openapi 库,包括 Membrane 特定的要求。
需求
- 有效的 OpenAPI 规范。
- 所有 操作对象 上都有一个 operationId,以便每个路由都可以唯一标识。
安装
composer require membrane/openapi-router
快速入门
实例化一个 Reader
$versions = [\Membrane\OpenAPIReader\OpenAPIVersion::Version_3_0]; $reader = new \Membrane\OpenAPIReader\Reader($versions);
从绝对文件路径读取
此方法是读取器的主要用例,能够 解析所有引用。
如果您的文件路径包含文件扩展名,则读取器可以使用此信息来确定 OpenAPI 编写的语言。
// code to instantiate reader... $reader->readFromAbsoluteFilePath('~/path/to/my-openapi.yaml');
否则,您可以通过提供第二个参数确保将其作为特定格式读取
// code to instantiate reader... $fileFormat = \Membrane\OpenAPIReader\FileFormat::Json; $reader->readFromAbsoluteFilePath('my-openapi', $fileFormat);
从字符串读取
因为 OpenAPI 将从字符串读取,所以必须提供 FileFormat。
// code to instantiate reader... $myOpenAPI = '<Insert your OpenAPI Spec here>'; $fileFormat = \Membrane\OpenAPIReader\FileFormat::Json; $reader->readFromString($myOpenAPI, $fileFormat)