导航 / ze-swagger-codegen
Zend Expressive Swagger 代码生成器
dev-master
2019-05-28 09:57 UTC
Requires
- php: ^7.1
- doctrine/annotations: ^1.6
- fig/http-message-util: ^1.1
- ocramius/proxy-manager: ^2.1
- roave/security-advisories: dev-master
- symfony/console: ^3.0 || ^4.0
- zendframework/zend-cache: ^2.7
- zendframework/zend-diactoros: ^1.7
- zendframework/zend-filter: ^2.8
- zendframework/zend-hydrator: ^2.3
- zendframework/zend-servicemanager: ^3.3
- zendframework/zend-validator: ^2.10
- zordius/lightncandy: ^1.2
Requires (Dev)
- filp/whoops: ^2.1.12
- guzzlehttp/guzzle: ^6.3
- infection/infection: ^0.12.2
- leanphp/phpspec-code-coverage: ^4.2
- mikey179/vfsstream: ^1.6
- phpspec/phpspec: ^4.3
- phpstan/phpstan: ^0.10.0
- psr/http-server-middleware: ^1.0
- squizlabs/php_codesniffer: ^2.9.1
This package is not auto-updated.
Last update: 2024-09-29 05:41:58 UTC
README
使用本包,您可以轻松根据您的 OpenAPI 规范 (OAS) 3.0 配置生成处理器、模型和路由。
要求
- Zend Expressive +3.0
安装
composer require bradcrumb/ze-swagger-codegen
使用方法
只需将您的 openapi.json
放置在项目根目录下,然后运行以下命令:
vendor/bin/swagger codegen
默认情况下,选择的命名空间将是 App
。您可以使用 --namespace 选项覆盖命名空间。
vendor/bin/swagger codegen --namespace MyOwnNamespace
CLI 将在 composer 自动加载中搜索正确的路径。如果没有注册自动加载的命名空间,它将询问是否需要创建并注册命名空间文件夹到 composer.json
。
文件
代码生成器将生成以下文件:
模型中间件
每个需要其 RequestBody 中的模型的路由都将有一个前置中间件:Swagger\Middleware\ModelMiddleware
。
该中间件检索 RequestBody,注入正确的模型并验证模型。
当 RequestBody 无效时,它将简单地返回每个属性的 400 响应中的所有错误消息。
当 RequestBody 有效时,注入的模型将作为属性添加到请求中,并在处理器内部检索。
$request->getAttribute('Model');