Laravel5のAPI

LaravelのAPIルートは便利。公式ドキュメントでは「routes/api.php中のルートはステートレスで、apiミドルウェアグループにアサインされます。」とありますが、一つのルーティングから必要なルートを全部一辺につくってくれるので大変便利です。正にAPI。
例えば”/items”というルーティングからだと、以下のようなルーティングを自動的にやってくれます。(といってもちょっと足りなかったりちょっと冗長だったりするもんです。)

// approot\routes\api.php
Route::resource('/items', 'HomeController');
$ php artisan route:list
Method URI Name Action Middleware
POST api/items items.store App\Http\Controllers\SampleController@store api,auth
GET HEAD api/items items.index App\Http\Controllers\SampleController@index | api,auth
GET HEAD api/items/create items.create App\Http\Controllers\SampleController@create | api,auth
PUT PATCH api/items/{item} items.update App\Http\Controllers\SampleController@update | api,auth
DELETE api/items/{item} items.destroy App\Http\Controllers\SampleController@destroy api,auth
GET HEAD api/items/{item} items.show App\Http\Controllers\SampleController@show | api,auth
GET HEAD api/items/{item}/edit items.edit App\Http\Controllers\SampleController@edit | api,auth

不要なものがある場合は削除できます。

Route::resource('/items', 'SampleController', ['except' => ['create', 'edit']]);

この場合はcreateとeditのルーティングを設定しません。


http://blog.asial.co.jp/1498
基本的なルーティング

Last update: 2018.07.03 (火)