場合によっては、$id
をミドルウェアに渡すことはできません。
Route::get('user/{id}', ['middleware' => 'auth:owner', function ($id) {
// Your logic here...
}]);
そして、このようなミドルウェアメソッドに渡されたパラメータを取得:
一般的に、あなたは、このよう:
記号を使用して経由ミドルウェアパラメータを渡すことができ
<?php
namespace App\Http\Middleware;
use Closure;
class Authentication
{
public function handle($request, Closure $next, $role)
{
if (auth()->check() && auth()->user()->hasRole($role)) {
return $next($request);
}
return redirect('login');
}
}
注意をそのhandle()
方法通常、$request
と と$next closure
をとり、third parameter
を持ちます。これは、i私たちのミドルウェア パラメータ。あなたはルート定義であなたのミドルウェア コールに複数のパラメータに渡された場合は、ちょうどあなたの ハンドル()メソッド
に多くのパラメータを追加し、この情報がお役に立てば幸い!
あなたは '$ request'変数を使っています:)(' $ request-> id') – Kyslik