Laravel에서 미들웨어는 HTTP 요청을 처리하는 데 중요한 메커니즘입니다. 이를 통해 개발자는 컨트롤러에 들어가라고 요청하거나 발신자 응용 프로그램을 떠난 후 일련의 논리적 작업을 수행 할 수 있습니다. 일반적인 용도로는 권한 검증, 로깅, 크로스 사이트 요청 위조 보호 등이 포함됩니다. Middleware는 응용 프로그램 보안 및 모듈성을 강력하게 지원합니다.
Laravel의 Artisan Command Line 도구를 사용하여 미들웨어를 만들 수 있습니다. 다음은 Checkage 라는 미들웨어를 작성하라는 명령입니다.
php artisan make:middleware CheckAge
이 명령은 앱/http/미들웨어 디렉토리에서 Checkage.php 파일을 생성합니다.
생성 후 Checkage 파일을 열고 핸들 메소드에 필요한 논리를 추가하십시오. 다음은 사용자가 18 세 이상인지 확인하는 샘플 코드입니다.
public function handle($request, Closure $next)
{
if ($request->age < 18) {
return redirect('home');
}
return $next($request);
}
위 코드에서 요청의 연령이 18 세 미만인 경우 시스템은 사용자를 홈페이지로 리디렉션합니다.
미들웨어 로직이 작성된 후 앱/http/kernel.php 파일에 등록해야합니다. 주문시 쉽게로드 할 수 있도록 라우팅 미들웨어로 정의 할 수 있습니다.
protected $routeMiddleware = [
'age' => \App\Http\Middleware\CheckAge::class,
];
이 정의 후에는 경로에서 나이 의 별칭을 사용하여 미들웨어를 참조 할 수 있습니다.
미들웨어 등록이 완료되면 라우팅 파일에서 사용할 수 있습니다. 예를 들어, Routes/Web.php 에서는 다음과 같이 쓸 수 있습니다.
Route::get('profile', function () {
// 프로필 로직
})->middleware('age');
즉, /프로필 경로에 액세스 할 때 Checkage Middleware가 자동으로 트리거되어 권한 판단을합니다.
Laravel Middleware는 개발자에게 HTTP 요청에서 전처리 및 후 처리 논리를 처리 할 수있는 우아하고 유연한 방법을 제공합니다. 창조, 쓰기 논리, 등록 및 라우팅 통화에 이르기까지 전체 프로세스는 간결하고 명확합니다. 미들웨어 사용을 마스터하면 더 안전하고 유지 관리 가능한 웹 애플리케이션을 구축하는 데 도움이됩니다.