第三节:dingo/API 最新版 V2.0 之 Creating API Endpoints (创建API路由)

2021-07-20 14:35

阅读:977

$api->version(‘v1‘, [‘middleware‘ => ‘foo‘], function ($api) {

});

你也能为你某个版本中的路由,统一一些属性。如下:

$api->version(‘v1‘, function ($api) {
    $api->group([‘middleware‘ => ‘foo‘], function ($api) {
        // Endpoints registered here will have the "foo" middleware applied.
    });
});

2.Creating Endpoints  创建路由

一旦你拥有一个版本组,你就可以使用$api 在这个版本组中,创建路由。

$api->version(‘v1‘, function ($api) {
    $api->get(‘users/{id}‘, ‘App\Api\Controllers\UserController@show‘);
});

因为每个版本组都是不相关的,相同的url路由,可以在不同的版本组中,作出不同的响应。

$api->version(‘v1‘, function ($api) {
    $api->get(‘users/{id}‘, ‘App\Api\V1\Controllers\UserController@show‘);
});

$api->version(‘v2‘, function ($api) {
    $api->get(‘users/{id}‘, ‘App\Api\V2\Controllers\UserController@show‘);
});

你也可以在不同的版本中,使用各自的方法注册资源和控制器。

提醒,你需要为控制器添加说明完整的命名空间(namespace),.例如:App\Http\Controllers

3.Named Routes And Generating URLs  命名路由并生成URL

命名你的路由可以使你方便的生成他们的 URL。你可以跟 Laravel 一样的方法命名你的路由。

$api->get(‘users/{id}‘, [‘as‘ => ‘users.index‘, ‘uses‘ => ‘Api\V1\UserController@show‘]);

现在你可以通过路由别名,生成这个别名的URL。

app(‘Dingo\Api\Routing\UrlGenerator‘)->version(‘v1‘)->route(‘users.index‘);

4.Viewing Routes In The Console 在特定的控制台上显示路由

如果你使用Laravel 5.1, 你可以通过使用Artisan命令查看。

$ php artisan api:routes

该命令和Laravel中的route:list命令一样。

 

 

 


评论


亲,登录后才可以留言!