كيفية تقديم ملف HTML محدد في مسار جذر FastAPI أثناء استخدام الملفات الثابتة
عند استخدام FastAPI مع StaticFiles لخدمة الملفات الثابتة، فإنك قد تواجه سيناريوهات حيث تريد تحميل ملف HTML مختلف (على سبيل المثال، custom.html) في المسار الجذر بدلاً من ملف Index.html الافتراضي. يمكن تحقيق ذلك من خلال فهم جوانب معينة من توجيه FastAPI ووظيفة StaticFiles.
فهم StaticFiles
وفقًا لوثائق Starlette، StaticFiles عبارة عن برنامج وسيط يتعامل مع خدمة الملفات الثابتة من دليل محدد. عندما يتم تعيين html=True، فإنه يبحث تلقائيًا عن ملفات Index.html في الدلائل ويقدمها وفقًا لذلك.
ترتيب التركيب
ترتيب تركيب الملفات الثابتة وتحديد ملفك تلعب نقاط النهاية دورًا حاسمًا. إذا تم تثبيت StaticFiles على المسار الجذر (أي /) وتم تعريفها قبل أي نقاط نهاية، فستكون لها الأسبقية وتتعامل مع جميع الطلبات، حتى إذا تم تعريف نقاط النهاية المخصصة لاحقًا.
تخصيص مسار الجذر
لخدمة ملف HTML محدد في المسار الجذر، يجب عليك اتباع الخطوات التالية:
تحميل الملفات الثابتة إلى مسار منفصل (على سبيل المثال، /static) :
app.mount('/static', StaticFiles(directory='static'))
إنشاء نقطة نهاية مخصصة تُرجع ملف HTML المطلوب:
@app.get('/') async def index(): return FileResponse('custom.html')
اعتبارات إضافية
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3