dingo 文档 https://github.com/dingo/api/wiki
1.下载
composer require dingo/api
2.vender:publish 发布dingo文档(config/api.php)
php artisan vendor:publish --provider="Dingo\Api\Provider\LaravelServiceProvider"
3.配置(.env=>api.php)
4.路由配置
$api = app('Dingo\Api\Routing\Router');
$api->version('v1', function($api) {
$api->get('test', function(){
return 'this is test dingo api';
});
});
api.php:'version' => env('API_VERSION', 'v1'),
访问:api/test
版本更换
$api->version('v2',function($api){
$api->get('test2',function(){
return 'api/v2';
});
});
需要在header中加入Accept:application/prs.teach.v2+json
注意:teach 是在.env 中配置 API_SUBTYPE=teach,
而prs 是在.env中配置的API_STANDARDS_TREE=prs
/api/test2
dingo/api结合jwt
$api->version('v3',[
'namespace'=>"App\\Http\\Controllers\\Api\\v1"
],function($api){
$api->get('test3',function(){
return 'api/v3';
});
$api->post("login","AuthController@login");
$api->post("logout","AuthController@logout");
$api->post("refresh","AuthController@refresh");
$api->get('/user', function (Request $request) {
//return 'user';
return $request->user();
})->middleware("auth:api");
});