ホームページ  >  記事  >  バックエンド開発  >  FastAPI のルート パスで、index.html の代わりにカスタム HTML ファイルを提供するにはどうすればよいですか?

FastAPI のルート パスで、index.html の代わりにカスタム HTML ファイルを提供するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-09 19:59:02606ブラウズ

How to Serve Custom HTML Files Instead of index.html in FastAPI's Root Path?

FastAPI ルート パスで Index.html の代わりにカスタム HTML ファイルを提供する

FastAPI では、StaticFiles ミドルウェアを使用して HTML などの静的ファイルを提供できます。ただし、ルート パス (/) に StaticFiles を使用すると、ルート ディレクトリに Index.html が自動的に提供されるため、予期しない動作が発生する可能性があります。

カスタム HTML の代わりに Index.html が提供される理由

[Starlette のドキュメント](https://www.starlette.io/static-files/) によると、StaticFiles には html オプションがあり、True に設定すると、index.html が自動的にロードされます。

解決策: StaticFiles を別のパスにマウントします

カスタム HTML ファイルをルート パスに正しくレンダリングするには、StaticFiles を別のパス (/ など) にマウントします。 static:

マウント順序が重要

StaticFiles をマウントする順序そしてエンドポイントを定義することが重要です。ルート エンドポイントを定義した後に StaticFiles をマウントすると、ルート エンドポイントが優先され、カスタム HTML ファイルが提供されます。

html=True オプションを削除します

別の HTML ファイルを提供したい場合動的に実行し、追加のエンドポイントがある場合は、StaticFiles から html=True オプションを削除し、FastAPI を使用することをお勧めします。 [テンプレート](https://fastapi.tiangolo.com/templates/)。

結論

StaticFiles の順序と構成に対処することで、代わりにカスタム HTML ファイルを提供できます。ルート パスにindex.htmlを追加すると同時に、追加の API エンドポイントも有効にします。特定の使用例に応じて、html=True オプションを慎重に検討してください。

以上がFastAPI のルート パスで、index.html の代わりにカスタム HTML ファイルを提供するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。