FastAPI で API ドキュメントの自動生成と UI 表示を実装する方法
FastAPI のような強力な Python フレームワークを使用すると、高パフォーマンスの Web API を簡単に構築できます。ただし、API を構築する際には、他の開発者が API を理解して使用できるように、明確でわかりやすい API ドキュメントも必要です。この記事では、FastAPI を使用して API ドキュメントを自動生成し、UI に表示する方法を紹介します。
まず、FastAPI と関連する依存ライブラリをインストールする必要があります。コマンド ラインで次のコマンドを実行してインストールします:
pip install fastapi pip install uvicorn pip install fastapi_utils
次に、必要なモジュールをインポートする必要があります:
from fastapi import FastAPI from fastapi_utils.api_model import APIModel from fastapi_utils.api_doc import APIModelDoc
次に、FastAPI のインスタンスを作成します:
app = FastAPI()
次に、API モデルを定義できます。 API モデルは、FastAPI によって提供されるAPIModel
クラスを使用して定義されます。このクラスには、API リクエストとレスポンスのフィールドを含めることができます。
class User(APIModel): id: int name: str email: str
FastAPI アプリケーションでは、このモデルを使用して API ルーティングとロジックを定義できます。
@app.get("/users/{user_id}", response_model=User, summary="Get user by ID", tags=["users"]) def get_user(user_id: int): return {"id": user_id, "name": "John Doe", "email": "johndoe@example.com"}
上記のコードでは、HTTP GET リクエストのルート/users/{user_id}
を定義し、応答モデルをUser
として指定します。また、ルートに簡単な説明とラベルを追加しました。これは、後で API ドキュメントを整理およびフィルタリングするために使用できます。
次に、APIModelDoc
クラスを使用して、API モデルのドキュメントを生成します。
docs = APIModelDoc(app) docs.register(User)
上記のコードにより、API モデルが API ドキュメントに登録されます。
最後に、docs.html
メソッドを使用して、自動生成された API ドキュメントの HTML コードを取得する必要があります。
@api.route('/docs', method="GET", tags=["docs"]) def get_docs(): return docs.html()
上記のコードでは、GET ルート/docs
を定義し、自動生成された API ドキュメントの HTML コードを返します。ここでは、API ドキュメント内でフィルタリングおよび整理するために、このルートにタグdocs
を追加しました。
次に、FastAPI アプリケーションを実行して、自動的に生成された API ドキュメントを表示しましょう。
if __name__ == "__main__": uvicorn.run(app, host="0.0.0.0", port=8000)
コマンド ラインで次のコマンドを実行してアプリケーションを起動します。
python app.py
次に、ブラウザでhttp://localhost:8000/docs
にアクセスします。自動生成された API ドキュメントを確認できます。
上記の手順により、FastAPI で API ドキュメントの自動生成と UI 表示を実装することができました。 API ドキュメントのスタイルとコンテンツをニーズに合わせてさらにカスタマイズおよび調整できます。
この記事が、FastAPI を使用して強力な API を構築するのに役立ち、API に関する明確でわかりやすいドキュメントを提供できることを願っています。
以上がFastAPIでAPIドキュメントの自動生成とUI表示を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。