Laravelのmiddleware

事前処理を実装するのにアクションの先頭で実装する方法もまああるにはあるけど折角Laravelなのだからここは middlewareを活用しない手はない。

って事らしい。

Laravel初心者なのでこの仕組みは知っておきたい。

middlewareはartisanで作成してKernel.phpに登録するものらしい、具体的には配列にクラス名を記載する。

この配列はKVになっているものもありその場合はKをルーティングで定義する。

‘sample’ => \App\Http\Middleware\Ex::class,

Route::middleware(‘sample’)->post(‘/add’, …

みたいにしておくと /add にアクセスした時に実装APP前で middleware Exクラスの

public function handle(Request $request, Closure $next)

が実行されると。

ここで面白いのがRequest $requestが取れてることだ。

つまり$_REQUESTの内容を全部ここで取れるのでaction実行前にリクエストの中身を処理できるってわけだ。

昔のようにアクション見に行けば全体が見渡せた方が良さそうな気もするんだけど。