forked from loafle/openapi-generator-original
[core] Initial FeatureSet structures and definitions Add default feature set to DefaultCodegen Initial FeatureSet definitions for: * ada * android * apache2 * asciidoc * aspnetcore * avro * bash * c * clojure * cpp-pistache-server * cpp-qt5-client * cpp-qt5-qhttpengine-server * cpp-restbed-server * cpp-restsdk * cpp-tizen * csharp * csharp-nancyfx * csharp-netcore * cwiki * dart * eiffel * elixir * elm * erlang * flash * fsharp-functions * go Client/Server * graphql-nodejs-express-server * graphql-schema * groovy * haskell * haskell-http-client * java * jmeter * kotlin * kotlin vertx * kotlin-server * kotlin-spring * lua * mysql * nim * nodejs * nodejs-express * objc * ocaml * openapi * openapi-yaml * perl * php * php-laravel * php-lumen * php-silex * php-slim * php-symfony * php-ze-ph * powershell * protobuf * protobuf-schema * python * python-aiohttp * python-blueplanet * python-experimental * r * ror * ruby * ruby * ruby-sinatra * rust * scala-akka * scala-finch * scala-gatling * scala-http-client * scala-lagom * scala-play * scalatra * scalaz * spring * static docs * swift * typescript
OpenAPI generated server
Generated by the OpenAPI Generator project.
Overview
This server stub aims to provide light, yet comprehensive structure for your API project using:
- PHP: >=7.1
- Zend Expressive: >=3.2
- Path Handler: >=0.4
How to use
All you have to do to start development is:
- install dependencies via Composer (small note: ext-yaml is used only for configuration parsing, so if you want to drop this dependency, simply adjust
./application/container.php
) - create cache folder:
mkdir -p ./data/cache/ZendCache
(you will need it later for configuration and metadata caches - check comments in./application/config.yml
) - start PHP development server:
php -S 0.0.0.0:8080 -t ./public
(or any other SAPI you prefer, just make sure that you configure webroot to./public
and rewrites to./public/index.php
)
After that you should be able to call all methods from your API spec. Most of the negative scenarios should be handled:
404 Not found
for unknown routes406 Not acceptable
for invalidAccept
header415 Unsupported media type
for invalidContent-Type
header400 Malformed JSON
for unparsable JSON body422 Unprocessable entity
for parsable JSON body that fails validation
But for obvious reason you will not get any 200 OK
, only 501 Not implemented
. So your next steps are:
- check all TODOs left in the stub code where generator was not smart enough and could not guarantee correct implementation
- implement your API security mechanism (either special attribute or separate middleware) - generator does not do anything about it yet
- implement your handlers - the most tricky part :)
Enjoy!
Hopefully this stub will reduce the amount of boilerplate code you have to write manually. If you have any suggestions or questions about php-ze-ph
generator, feel free to create issue either in Path Handler repository or in OpenAPI Generator repository.