لماذا يهم هذا الدرس؟
فهم Middleware وتطبيقه عمليًا داخل ميزة صغيرة في Laravel. يتعامل Middleware مع الفحوص المشتركة، وتثبت Authentication الهوية وتحفظ Sessions الحالة الموثوقة، بينما يقرر Authorization هل يسمح لهذه الهوية بعملية محددة.
كيف تفكر فيه؟
- في درس Middleware، النتيجة التي يجب أن تتحقق: ضع الفحص المشترك قبل الوصول إلى Controller.
- في سياق Middleware، الخطر الذي يجب أن يبقى تحت السيطرة: إخفاء زر ليس Authorization؛ كل Mutation محمية يجب أن تفرض Permission أوPolicy على الخادم.
- تطبيق Middleware: احم Route واحدة بالمصادقة وPolicy ثم اختبر حالات unauthenticated وforbidden وallowed منفصلة.
موضع Middleware في الطلب
1
RequestStart
2
MiddlewareStep
3
ControllerStep
4
ResponseOutcome
تطبيق عملي
في التطبيق الخاص بدرس Middleware: ضع الفحص المشترك قبل الوصول إلى Controller.
app/Http/Middleware/EnsureAccountActive.phpphp
public function handle(Request $request, Closure $next): Response
{
abort_unless($request->user()?->is_active, 403);
return $next($request);
}جرّب بنفسك
تمرين Middleware
احم Route واحدة بالمصادقة وPolicy ثم اختبر حالات unauthenticated وforbidden وallowed منفصلة.
- سجل النتيجة المتوقعة قبل التنفيذ
- اختبر حالة صحيحة وحالة فشل مرتبطة بالدرس
- اشرح في سطرين أين يوجد الحد المسؤول عن القرار
