dingo 安装:
在composer.json 配置 "dingo/api":"1.0.*@dev"
用composer update 安装, 当然你也可以直接进行安装
Dingo\Api\Provider\LaravelServiceProvider::class
生成config/api文件:php artisan vendor:publish --provider="Dingo\Api\Provider\LaravelServiceProvider"
关于在.env 文件下的配置你可以使用
API_STANDARDS_TREE=vnd
API_SUBTYPE=emall // 可自己配置
API_PREFIX=api
API_VERSION=v1
jwt-auth 安装:
"tymon/jwt-auth": "1.0.*@dev"
composer update
在config/api 文件进行配置auth:
'jwt' => Dingo\Api\Auth\Provider\JWT::class
config/app providers
Tymon\JWTAuth\Providers\LaravelServiceProvider::class
config/app aliases
'JWTAuth'=> Tymon\JWTAuth\Facades\JWTAuth::class
生成config/jwt 配置文件:
php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\LaravelServiceProvider"
jwt的key文件生成:
php artisan jwt:secret
dingo jwt 关联
config/api.php
'auth'=> [
'base'=>function($app){
return newDingo\Api\Auth\Provider\Basic($app['auth']);
},
'jwt'=>function($app){
return newDingo\Api\Auth\Provider\JWT($app['Tymon\JWTAuth\JWTAuth']);
}
],
swagger-php 安装:
composer require zircote/swagger-php
配置一个控制器文件进行读取显示所有swg。
$swagger = \Swagger\scan(app_path('Http/Controllers/'));
return response()->json($swagger,200);
swagger-ui 使用:
在github上找到swagger的官方文件下载:
找到dist文件进行下载,移动到public 文件夹下。
注意index.html 文件的url要修改成自己配置的控制器地址。
swagger的配置使用: //www.greatytc.com/p/6840514c4c8e
swg配置文档:https://www.gitbook.com/book/huangwenchao/swagger/details
jwt-auth的使用: https://segmentfault.com/a/1190000010449592
亲测可用, 第一次使用larave开发项目以及swg, 由谁遇到难解决的bug分享 or 讨论一下解决方法。