Laravel 9 미들웨어 - 전체 가이드

오늘 우리는 Laravel 미들웨어를 자세히 살펴보고 사용법을 이해할 것입니다.

미들웨어란 무엇입니까?



미들웨어는 HTTP 요청과 응답 사이의 다리와 같습니다. 애플리케이션에 들어오는 HTTP 요청을 검사하고 필터링하기 위한 메커니즘을 제공합니다.

코드로 직접 이동하여 미들웨어를 이해해 봅시다. 그럼 미들웨어를 생성하고 사용하는 방법을 알아보겠습니다.

미들웨어를 만드는 방법?



미들웨어를 생성하려면 'CheckYear'라는 요청에서 연도를 확인하기 위해 미들웨어를 생성하는 명령을 실행해야 합니다.

php artisan make:middleware CheckYear


미들웨어에 조건 추가



연도 확인을 위해 미들웨어에 조건을 추가하는 로직을 추가해 봅시다.

<?php

namespace App\Http\Middleware;

use Closure;
use Illuminate\Http\Request;

class CheckYear
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure(\Illuminate\Http\Request): (\Illuminate\Http\Response|\Illuminate\Http\RedirectResponse)  $next
     * @param String $year
     * @return \Illuminate\Http\Response|\Illuminate\Http\RedirectResponse
     */
    public function handle(Request $request, Closure $next, $year)
    {

        if($request->has('year') && ($request->year == $year)){

            return $next($request);
        }

        return redirect()->route('welcome');
    }
}


route/web.php에 미들웨어 적용




Route::get('/user/create', [App\Http\Controllers\UserController::class, 'createUser'])->middleware(['check-year:2022']);

Route::get('/user/new', [App\Http\Controllers\UserController::class, 'createUser'])->middleware(['check-year:2023']);


다른 미들웨어를 생성하고 요구 사항에 따라 사용할 수 있습니다.

여기에서 Youtube에서 완전한 비디오 자습서를 얻을 수 있습니다.



구현하는 동안 문제가 발생하면 질문을 댓글로 남겨주세요.

읽어 주셔서 감사합니다

나에게 연락하십시오.

좋은 웹페이지 즐겨찾기