menu
書いてる野郎
orebike@gmail.com
app/Http/routes.php
に設定を記述することによりマッピングできる
このように何かで来たらどのコントローラーのどのメソッドを起動するかを直接書く
Route::get('hoges', 'HogesController@getIndex');
このように書くと、コントローラーのメソッド記述に基いて自動的にルーティングが決定される
Route::controller('hoges', 'HogesController');
便利そうなのだが、これをそのまま書くと
Domain | Method | URI | Name | Action | Middleware |
GET|HEAD | hoges/index/{one?}/{two?}/{three?}/{four?}/{five?} | App\Http\Controllers\HogesController@getIndex | |||
GET|HEAD | hoges | App\Http\Controllers\HogesController@getIndex | |||
GET|HEAD|POST|PUT|PATCH|DELETE | hoges/{_missing} | App\Http\Controllers\HogesController@missingMethod |
このようなルーティングが自動的に追加される。コントローラの記述ミスで脆弱性を造り込みそうなのであんまり心が進まない
最後のルーティングは該当のメソッドが無かった場合の処理をmissingMethodというメソッドに書けよということで、その引数にその無かったメソッド名を先頭としたパラメータの配列が来る。これを受けてネーヨとか出す。
コマンドで実際の設定がどのようにマッピングされているか確認することができる
$ php artisan route:list