mirror of
https://github.com/OpenAPITools/openapi-generator.git
synced 2025-10-24 05:13:43 +00:00
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./publicand 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 foundfor unknown routes406 Not acceptablefor invalidAcceptheader415 Unsupported media typefor invalidContent-Typeheader400 Malformed JSONfor unparsable JSON body422 Unprocessable entityfor 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.