Open leminhluan4244 opened 3 weeks ago
Tham khảo tài liệu gốc ở: Link
Có thể đặt tên cho middleware trong file:
app\Http\Kernel.php
protected $routeMiddleware = [
'auth' => \App\Http\Middleware\Authenticate::class,
'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class,
'can' => \Illuminate\Auth\Middleware\Authorize::class,
'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
'password.confirm' => \Illuminate\Auth\Middleware\RequirePassword::class,
'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class,
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class,
'admin' => \App\Http\Middleware\AdminMiddleware::class,
'user' => \App\Http\Middleware\UserMiddleware::class,
];
Sử dụng :
Thay vì viết:
use App\Http\Middleware\UserMiddleware;
class HomeController extends Controller
{
/**
* Get the middleware that should be assigned to the controller.
*/
public static function middleware(): array
{
return [
'auth',
UserMiddleware::class,
];
}
}
Có thể viết:
class HomeController extends Controller
{
/**
* Get the middleware that should be assigned to the controller.
*/
public static function middleware(): array
{
return [
'auth',
'user',
];
}
}
Câu lệnh:
Khi sử dụng middleware thì hàm
handle
luôn được chạyBên trong hàm
handle
hàm$next($request);
cho phép request đi tiếp đến Controller