یک برنامهٔ FastAPI بسازید که مسیر GET /hello را با استفاده از قالب Jinja2 (فایل hello.html) رندر کند و نام کاربر را از پارامتر query ?name گرفته و علاوه بر بازگرداندن HTML، هدر سفارشی X-Greeting را با مقدار "Hello-" در پاسخ قرار دهد.
9.0 بازدید آخرین ویرایش در 199 روز قبل ساعت 19:48 0.0
برای حل، از fastapi و Jinja2Templates استفاده کنید: یک پوشهٔ templates بسازید و فایل hello.html را در آن قرار دهید، در مسیر تابع باید پارامتر name: str = "Guest" و Request را بگیرید و از templates.TemplateResponse برای رندر استفاده کنید. هدر سفارشی را میتوانید با آرگومان headers در TemplateResponse یا با تنظیم response.headers قبل از بازگرداندن پاسخ اضافه کنید. نکات: بستههای fastapi و uvicorn را نصب کنید، فایل main.py را اجرا کنید با uvicorn main:app --reload و مطمئن شوید که نام متغیر را به قالب ارسال میکنید تا در HTML نمایش یابد.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
یادداشت: هنگام استفاده از Jinja2Templates حتماً پارامتر Request را به فانکشن مسیر اضافه کنید و مقدار name: str = "Guest" را به قالب ارسال کنید تا در hello.html نمایش داده شود. برای اضافه کردن هدر سفارشی میتوانید از آرگومان headers در TemplateResponse یا قبل از بازگرداندن response.headers استفاده کنید، مثلاً تنظیم X-Greeting با مقدار "Hello-" یا "Hello-{name}" بسته به نیازتان. پیش از اجرا مطمئن شوید پوشه templates در کنار main.py وجود دارد و بستههای fastapi و uvicorn نصب و اپ با uvicorn main:app --reload اجرا شده است.
گزارش