0Pricing
Sveltejs Academy · درس

المسارات المحمية في خطاف handle()

أعد توجيه المستخدمين غير الموثّقين من المسارات المحمية داخل خطاف handle

المسارات المحمية في خطاف handle() درس مجاني في Sveltejs Academy على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Sveltejs Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Sveltejs Academy 4 دروس في المجموع.

حماية المسارات عند Edge

اجعل حماية المسارات مركزية في hook ‏handle ليكون لديك مصدر واحد للحقيقة.

تحقق من locals

إذا ضبطت event.locals.user في handle، فتحقق منه للمسارات المحمية.

export async function handle({ event, resolve }) {
  event.locals.user = await getUser(event);
  if (event.url.pathname.startsWith("/admin") && !event.locals.user) {
    return new Response("Unauthorized", { status: 302, headers: { Location: "/login" } });
  }
  return resolve(event);
}

الوصول المستند إلى الأدوار

تحقق من أدوار المستخدم للتحكم في الوصول إلى الأقسام.

if (event.url.pathname.startsWith("/admin") && event.locals.user?.role !== "admin") redirect(...);

خطة بديلة لدالة التحميل

داخل دالة load في +page.server.js، ألقِ redirect إذا كان locals.user مفقودًا لمزيد من الأمان.

المسارات العامة مقابل الخاصة

استخدم مطابقة المسارات أو حدود التخطيطات للتمييز بينها.

تجنب عمليات التحقق لكل صفحة

تمنع عمليات التحقق المركزية نسيان مسارات قد تكشف بيانات حساسة.

عنوان العودة

شفّر عنوان URL الأصلي باعتباره معلَمة استعلام حتى يعود المستخدمون إليه بعد تسجيل الدخول.

redirect(303, `/login?next=${encodeURIComponent(event.url.pathname)}`);

مسارات API

احمِ نقاط نهاية API ‏(+server.js) باستخدام منطق hook نفسه.

الأداء

ينبغي أن تكون عمليات التحقق من المصادقة سريعة. خزّن بيانات المستخدم مؤقتًا لكل طلب عبر locals.

اتساق SSR

تضمن المصادقة المركزية سلوكًا متسقًا في الطلبات المعروضة على الخادم والطلبات التي تنتقل إليها الواجهة من جانب العميل.

الاختبار

تسهُل اختبار المصادقة المستندة إلى hook بمعزل عن غيرها مقارنة بعمليات التحقق الموزعة على الصفحات.

اختبار سريع

أين ينبغي تنفيذ حماية المسارات؟

مراجعة

اجعل حماية المسارات مركزية في handle، مع التحقق من locals.user وإعادة توجيه الطلبات غير المصرح بها.

الأسئلة الشائعة

هل درس «المسارات المحمية في خطاف handle()» مجاني؟

نعم — نص درس «المسارات المحمية في خطاف handle()» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Sveltejs Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Sveltejs Academy 4 دروس في المجموع.

ماذا ستتعلم في «المسارات المحمية في خطاف handle()»؟

أعد توجيه المستخدمين غير الموثّقين من المسارات المحمية داخل خطاف handle تتمرن على Sveltejs Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Sveltejs Academy؟

لا تُشترط خبرة سابقة. Sveltejs Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.

كم من الوقت يستغرق درس «المسارات المحمية في خطاف handle()»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Sveltejs Academy هذا؟

نعم. كل درس في Sveltejs Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. الجلسات القائمة على ملفات تعريف الارتباط
  2. JWT في ملفات تعريف ارتباط HTTP-only
  3. المسارات المحمية في خطاف handle()
  4. OAuth مع SvelteKit وLucia Auth
← العودة إلى Sveltejs Academy