haohetao / yii2-swagger
swagger intergation with yii2
Installs: 3 607
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 49
Open Issues: 0
Requires
- bower-asset/swagger-ui: *
- yiisoft/yii2: ^2.0.0
- zircote/swagger-php: *
This package is auto-updated.
Last update: 2025-02-28 01:43:32 UTC
README
Yii2 Swagger Extension
swagger-php intergation with yii2.
Integration swagger-ui with swagger-php.
Installation
The preferred way to install this extension is through composer.
Either run
php composer.phar require --prefer-dist haohetao/yii2-swagger "dev-master" --dev
or add
"haohetao/yii2-swagger": "dev-master"
to the require section of your composer.json
file.
Usage
Configure two action as below:
public function actions()
{
return [
//The document preview addesss:http://api.yourhost.com/site/doc
'doc' => [
'class' => 'haohetao\swagger\SwaggerAction',
'restUrl' => \yii\helpers\Url::to(['/site/api'], true),
],
//The resultUrl action.
'api' => [
'class' => 'haohetao\swagger\SwaggerApiAction',
//The scan directories, you should use real path there.
'scanDir' => [
Yii::getAlias('@api/modules/v1/swagger'),
Yii::getAlias('@api/modules/v1/controllers'),
Yii::getAlias('@api/modules/v1/models'),
Yii::getAlias('@api/models'),
],
//The security key
'api_key' => 'balbalbal',
],
];
}
For security, you can config api key for protection.
Caching
public function actions()
{
return [
// ...
'api' => [
// ...
'cache' => 'cache',
'cacheKey' => 'api-swagger-cache', // default is 'api-swagger-cache'
],
];
}
Clear cache
Access clear cache url YOUR_API_URL?clear-cache
or YOUR_API_URL?api_key=YOUR_API_KEY&clear-cache
Example: curl 'http://localhost/v1/swagger/api?clear-cache'
you will see: Succeed clear swagger api cache.
Finally
If there also some confused, you can refer the Demo.