تهيئة المسارات الاحتياطية

مكتمل

يوجد مسار /products من جانب العميل في تطبيق الواجهة الأمامية يعرض قائمة بالمنتجات لقائمة التسوق. عند الانتقال إلى /products في تطبيقك عن طريق تحديد ارتباط المنتجات ، يؤكد شريط عناوين المستعرض أنك في /products. عند تحديث المستعرض في أثناء وجوده في هذه الصفحة، تريد أن يحدّث التطبيق المنتجات ويعرضها مرةً أخرى. ومع ذلك، بدون مسار احتياطي، سترى خطأ 404 يفيد بأنه لا يمكن العثور على الصفحة.

سترى خطأ 404 عند تحديث الصفحة لأن المستعرض يرسل طلبًا إلى النظام الأساسي استضافةً لخدمة /products. ومع ذلك، لا توجد صفحة على الخادم باسم products لعرضها.

لحسن الحظ، يسهل حل هذه المشكلة من خلال إنشاء مسار احتياطي. المسار الاحتياطي هو مسار يقوم بإقران جميع طلبات الصفحات غير المتطابقة إلى الخادم.

تكوين المسار الاحتياطي

تدعم Azure Static Web Apps قاعدة التحويل المخصصة والمحددة في ملف staticwebapp.config.json المخصص الواقع في مصدر التطبيق. يمكنك تعريف مسار احتياطي للتنقل في عنصر navigationFallback. يشبه تكوين المسار الاحتياطي الشائع هذا المثال.

{
  "navigationFallback": {
    "rewrite": "/index.html",
    "exclude": ["/_framework/*", "/css/*"]
  }
}
الإعداد قيمة ‏‏الوصف
إعادة الكتابة /index.html الملف المطلوب عرضه عندما لا يتطابق المسار مع أي ملفات أخرى.
استثناء ["/_framework/*", "/css/*"] المسار (المسارات) المطلوب تجاهلها من التوجيه الاحتياطي.

يتم تطبيق قاعدة التنقل الاحتياطي بعد أي قواعد توجيه أخرى تظهر في الملف staticwebapp.config.json.

موقع الملف للمسار

الموقع المستحسن لـ staticwebapp.config.json هو داخل المجلد المُعين كـ app_location في ملف سير العمل. ومع ذلك، يمكن وضع الملف في أي موقع داخل مجلد التعليمات البرمجية المصدر للتطبيق.