maxim-sarandev / lumen-swagger-cors
CORS configuration added to the base Swagger Lumen repo
Installs: 1 083
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Requires
- php: >=7.1.3
- laravel/lumen-framework: ~5.6
- swagger-api/swagger-ui: ^3.0
- zircote/swagger-php: ~2.0|3.*
Requires (Dev)
- fzaninotto/faker: ~1.4
- mockery/mockery: ~1.0
- phpunit/phpunit: ~7.0
- satooshi/php-coveralls: ^2.0
- vlucas/phpdotenv: ~3.3
This package is auto-updated.
Last update: 2024-10-29 05:40:46 UTC
README
Info
This package has been cloned for the purposes of defining a set of CORS headers, that will be included in the default response object.
No other logic has been currently edited.
All credit is due to the creator of the original "SwaggerLume" codebase - thank you
!
Swagger 2.0 for Lumen 5
This package is a wrapper of Swagger-php and swagger-ui adapted to work with Lumen 5.
Installation
- Open your
bootstrap/app.php
file and:
uncomment this line (around line 26) in Create The Application
section:
$app->withFacades();
add this line before Register Container Bindings
section:
$app->configure('swagger-lume');
add this line in Register Service Providers
section:
$app->register(\SwaggerLume\ServiceProvider::class);
- Run
php artisan swagger-lume:publish-config
to publish configs (config/swagger-lume.php
) - Make configuration changes if needed
- Run
php artisan swagger-lume:publish
to publish everything
Using OpenApi 3.0 Specification
If you would like to use lattes OpenApi specifications (originally known as the Swagger Specification) in you project you should:
- Explicitly require
swagger-php
version 3.* in your projects composer by running:
composer require 'zircote/swagger-php:3.*'
- Set environment variable
SWAGGER_VERSION
to 3.0 in your.env
file:
SWAGGER_VERSION=3.0
or in your config/l5-swagger.php
:
'swagger_version' => env('SWAGGER_VERSION', '3.0'),
- Use examples provided here: https://github.com/zircote/swagger-php/tree/3.x/Examples/petstore-3.0
Configuration
- Run
php artisan swagger-lume:publish-config
to publish configs (config/swagger-lume.php
) - Run
php artisan swagger-lume:publish-views
to publish views (resources/views/vendor/swagger-lume
) - Run
php artisan swagger-lume:publish
to publish everything - Run
php artisan swagger-lume:generate
to generate docs
Changes in 3.0
- Swagger UI 3.
- Configuration changes.
- Assets dependency dropped. Now includes from composer package.
- See migration from 2.0 to 3.0
Changes in 2.0
- Lumen 5.4 support
- Swagger UI 2.2.8
Migrate from 2.0 to 3.0 or 5.5
- Remove
config/swagger-lume.php
file (make a copy if needed) - Remove
public/vendor/swagger-lume
directory - Remove
resources/views/vendor/swagger-lume
directory - Run
swagger-lume:publish
to publish new swagger-ui view and configuration - Edit your
config/swagger-lume.php
file
Swagger-php
The actual Swagger spec is beyond the scope of this package. All SwaggerLume does is package up swagger-php and swagger-ui in a Laravel-friendly fashion, and tries to make it easy to serve. For info on how to use swagger-php look here. For good examples of swagger-php in action look here.
#The link below supports DarkaOnLine
Support on Beerpay
Hey dude! Help me out for a couple of 🍻!