ホームページ >バックエンド開発 >Python チュートリアル >StaticFiles を使用して FastAPI のルート パスでカスタム HTML ファイルを提供するにはどうすればよいですか?
StaticFiles を使用して FastAPI ルート パスで特定の HTML ファイルを提供する方法
静的ファイルを提供するために FastAPI と StaticFiles を使用する場合、デフォルトのindex.htmlではなく、ルートパスに別のHTMLファイル(custom.htmlなど)をロードしたいシナリオが発生する可能性があります。これは、FastAPI のルーティングと StaticFiles 機能の特定の側面を理解することで実現できます。
StaticFiles について
Starlette のドキュメントによると、StaticFiles は、静的ファイルの提供を処理するミドルウェアです。指定されたディレクトリ。 html=True が設定されている場合、ディレクトリ内のindex.html ファイルが自動的に検索され、それに応じて提供されます。
マウント順序
StaticFiles をマウントして定義する順序。エンドポイントは重要な役割を果たします。 StaticFiles がルート パス (/) にマウントされ、エンドポイントより前に定義されている場合、カスタム エンドポイントが後で定義されている場合でも、StaticFiles が優先され、すべてのリクエストが処理されます。
ルート パスのカスタマイズ
ルート パスで特定の HTML ファイルを提供するには、次の手順に従う必要があります:
StaticFiles を別のパス (例: /static) にマウントします。 :
app.mount('/static', StaticFiles(directory='static'))
必要な HTML ファイルを返すカスタム エンドポイントを作成します:
@app.get('/') async def index(): return FileResponse('custom.html')
追加の考慮事項
以上がStaticFiles を使用して FastAPI のルート パスでカスタム HTML ファイルを提供するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。