دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۱۲
  • اسفند

جلسه ۰۶ : Middleware در لاراول

  • دسته‌بندی‌ها :
جلسه ۰۶ : Middleware در لاراول
    • جزئیات
    • نوع محتوا آموزش تصویری

      مقدمه

      با عرض سلام خدمت کاربران عزیز سایت پی وی لرن و کاربرانی که دوره کامل آموزش لاراول را دنبال می کنند، در هنگام طراحی سایت یا برنامه نویسی سیستم‌های تحت وب، مسیرهای متعددی در آن پیاده‌سازی می‌شود. پیش از اجرای این مسیرها یا نشانی‌های وب، لازم است تا فعالیت‌ها یا بررسی‌هایی صورت پذیرد. برای مثال ممکن است برای برخی از مسیرها، بررسی شود که آیا کاربر وارد سیستم شده است یا خیر و برای برخی دیگر از مسیرها بررسی شود که آیا کاربر وارد شده به سیستم دسترسی مدیریت دارد یا خیر. Middleware در لاراول ابزارهایی هستند که انجام فعالیت‌های تکراری پیش از پاسخگویی به درخواست‌های کاربران را مدیریت می‌کنند. بدون استفاده از مکانیسم middleware ، کدهای تکراری می‌بایست پیش از پاسخگویی به درخواست‌ها نوشته شوند.

      مکانیسم middleware در لاراول

      Middleware به عنوان یک پل، بین درخواست و پاسخ عمل می کند. این یک نوع مکانیزم فیلتر است این جلسه مکانیسم middleware را در Laravel توضیح می دهد.

      Laravel شامل یک میان افزار است که تأیید می کند که آیا کاربر برنامه تأیید شده است یا خیر. اگر کاربر تأیید شود، به صفحه اصلی هدایت می شود در غیر این صورت، اگر نه، آن را به صفحه، ورود به صفحه هدایت می کند.

      Middleware را می توان با اجرای دستور زیر ایجاد کرد.

      مثال : 

      <middleware-name> را با نام middleware خود جایگزین کنید.

      میان افزاری که ایجاد می کنید می توانید در دایرکتوری app / Http / Middleware مشاهده کنید.

      مثال

      برای درک مکانیزم میان افزار به مثال زیر توجه کنید.

      مرحله ۱ : اکنون AgeMiddleware را ایجاد کنید. برای ایجاد این، ما باید دستور زیر را اجرا کنیم.

      مثال : 

      مرحله ۲ پس از اجرای موفق فرمان، خروجی زیر را دریافت خواهید کرد.

      مکانیسم middleware-ایجادAgeMiddleware

      ایجادAgeMiddleware

       

      مرحله ۳ : AgeMiddleware در برنامه / Http / Middleware ایجاد خواهد شد. فایل جدید ایجاد شده دارای کد زیر است که قبلا برای شما ایجاد شده است.

      مثال : 

      ثبت نام Middleware

      ما باید قبل از استفاده از هر یک از میان افزار ها ثبت نام کنیم. در Laravel دو نوع middleware وجود دارد.

      ۱- میان افزار جهانی
      ۲-مسیر میان افزار
      Middleware جهانی در هر درخواست HTTP از برنامه اجرا می شود، در حالی که Middleware مسیر، به یک مسیر خاص اختصاص داده می شود.

      middleware را می توان در برنامه / Http / Kernel.php ثبت نام کرد.

      این فایل حاوی دو ویژگی $ middleware و $ routeMiddleware است.

      ویژگی middleware $ برای ثبت نام  میان افزار جهانی استفاده می شود. و ویژگی $routeMiddleware برای ثبت نام مسیر خاص middleware استفاده می شود.

      برای ثبت نام middleware جهانی، کلاس را در انتهای ویژگی middleware لیست کنید.

      مثال : 

      برای ثبت نام میان افزار خاص مسیر، کلید و ارزش را به property $ routeMiddleware اضافه کنید.

      مثال : 

      مثال

      ما AgeMiddleware را در مثال قبلی ایجاد کرده ایم.

      ما اکنون می توانیم آن را در میان افزار خاص مسیر middleware ثبت نام کنیم. کد آن ثبت نام در زیر نشان داده شده است.

      کد زیر برای برنامه / Http / Kernel.php زیر است.

      مثال : 

      پارامترهای Middleware

      ما همچنین می توانیم پارامترها را با مکانیسم Middleware منتقل کنیم.

      به عنوان مثال، اگر برنامه شما دارای نقش های مختلف مانند کاربر، مدیر، مدیر فوق و غیره باشد و شما می خواهید بر اساس آن نقش را تأیید کنید، با عبور از پارامترها با Middleware در لاراول می توانید این کار را انجام دهید.

      مکانیسم Middleware در لاراول که ما ایجاد می کنیم حاوی تابع زیر است و می توانیم بعد از استدلال $  آرگومان بعدی دلخواهمان را منتقل کنیم.

      مثال : 

      مثال

      مرحله ۱ : با اجرای دستور زیر، RoleMiddleware را ایجاد کنید.

      مثال : 

      مرحله ۲ : بعد از اجرای موفق، خروجی زیر را دریافت خواهید کرد.

      مکانیسم middleware-پارامترهای Middleware

      پارامترهای Middleware

      مرحله ۳ : کد زیر را به روش دسته جدید RoleMiddlewareat ایجاد کنید.

      برنامه / Http / Middleware / RoleMiddleware.php.

      مثال : 

      مرحله ۴ : RoleMiddleware را در پرونده \ Http \ Kernel.php ثبت کنید.

      برای ثبت نام RoleMiddleware، خط برجسته رنگ خاکستری را در آن فایل اضافه کنید.

      مکانیسم middleware-ثبت نام RoleMiddleware

      ثبت نام RoleMiddleware

      مرحله ۵ : برای ایجاد TestController دستور زیر را اجرا کنید.

      مثال : 

      مرحله ۶ : پس از اجرای موفقیت آمیز گام فوق، خروجی زیر را دریافت خواهید کرد.

      مکانیسم middleware-ایجاد TestController

      ایجاد TestController –

      مرحله ۷ : خطوط زیر کد را در پرونده / Http / TestController.php کپی کنید.

      app/Http/TestController.php

      مثال : 

      مرحله ۸ : کد خط زیر را در فایل app / Http / routes.php اضافه کنید.

      app/Http/routes.php

      مثال : 

      مرحله ۹ : برای تست Middleware در لاراول با پارامترهایش، URL زیر را ببینید.

      مثال : 

      مرحله ۱۰ :  خروجی به صورت زیر نمایش داده می شود.

      مکانیسم middleware-تست Middleware

      تست Middleware

      میان افزار قابل تعویض

      پس از ارسال پاسخ به مرورگر، یک میان افزار خاتمه مییابد.

      این می تواند با ایجاد یک middleware با روش خاتمه در middleware انجام شود.

      middleware termin باید با middleware جهانی ثبت شود.

      روش خاتمه، دو استدلال response$ و request$ را دریافت خواهد کرد.

      روش متوقف کردن را می توان به عنوان کد در زیر نشان داد.
      مثال

      مرحله ۱: ایجاد TerminateMiddleware با اجرای دستور زیر.

      مثال : 

      مرحله ۲ : مرحله بالا خروجی زیر را تولید می کند.

      مکانیسم middleware-ایجاد TerminateMiddleware

      ایجاد TerminateMiddleware

      مرحله ۳ : کد زیر را در TerminateMiddleware جدید کپی کنید.

      app/Http/Middleware/TerminateMiddleware.php.

      مثال : 

      مرحله ۴ : ثبت TerminateMiddleware در برنامه \ Http \ Kernel.php فایل.

      مکانیسم middleware-ثبت TerminateMiddleware

      ثبت TerminateMiddleware

      برای ثبت TerminateMiddleware، خطی را که در رنگ خاکستری برجسته شده است، اضافه کنید.

      مرحله ۵ : برای ایجاد ABCController دستور زیر را اجرا کنید.

      مثال : 

      مرحله ۶ : اجرای موفق URL، خروجی زیر را دریافت خواهید کرد.

      مکانیسم middleware-ایجاد ABCController

      ایجاد ABCController

      مرحله ۷ : کد زیر را به پرونده / Http / ABCController.php کپی کنید.

      app/Http/ABCController.php

      مثال : 

      مرحله ۸ : کد خط زیر را در فایل app / Http / routes.php اضافه کنید.

      app/Http/routes.php

      مثال : 

      مرحله ۹ : برای آزمایش Middleware Terminable از URL زیر دیدن کنید.

      مثال : 

      مرحله ۱۰ : خروجی به صورت زیر نمایش داده می شود.

      مکانیسم middleware-آزمایش Middleware Terminable

      آزمایش Middleware Terminable

      کلام آخر

      درخواست‌های HTTP جز جدایی‌ناپذیر  یک برنامه تحت وب هستند، برای مدیریت و فیلتر کردن درخواست‌های ورودی در لاراول از  middlewareها استفاده می‌کنیم.لاراول شامل یک middleware است که بوسیله آن می‌توان مشخص کرد که کاربر برنامه به درستی احراز هویت شده است یا خیر. اگر کاربر تایید نشده باشد، middleware کاربر را دوباره به صفحه ورود به سایت (Login) هدایت می‌کند. ولی اگر کاربر تأیید هویت شده باشد، middleware به درخواست اجازه می‌دهد تا به برنامه وارد شده و عملیات دیگری را نیز انجام دهد. در ادامه بیشتر به middleware در لاراول می‌پردازیم.

      QR:  جلسه ۰۶ : Middleware در لاراول
      به اشتراک بگذارید