はじめに
みずほリサーチ&テクノロジーズ株式会社の @fujine です。
本記事は、FastAPIを活用したAPI開発の解説記事の目次ページとなります。主に初学者を対象に、FastAPIによるアプリケーションの設計・実装・テストをスムーズに習得するためのノウハウを共有することが目的です。
公開済みの解説記事は、次章の「記事一覧」より各リンクをご参照下さい。今後、FastAPIとその関連機能を対象に、テーマ毎に随時執筆していきます。
FastAPIの公式ドキュメントにもチュートリアルが公開されております。
https://fastapi.tiangolo.com/ja/learn/
基本的にはこのチュートリアルだけでも十分ですが、写経した感想として、
- 記載の通りに実装すると
DeprecationWarning
が発生することがある - 基本的な機能解説に留まる箇所があり、もう少し実践的な事例が欲しい
- 実装されたコードを検証するテストコードが欲しい
といった課題を感じ、今般、学習コンテンツを新たに作成するに至りました。
記事一覧
FastAPI
No | タイトル |
---|---|
1 | FastAPIによるHello Worldとドキュメント生成、テストの実行 |
2 | パスパラメータ |
3 | クエリパラメータ |
4 | リクエストボディ |
5 | エラーハンドリング |
Pydantic
No | タイトル |
---|---|
1 | BaseModelによるモデル定義 |
実行環境とバージョン情報
各記事のPythonバージョンは3.13、各パッケージは以下バージョンで統一しております。
実行環境はWindows10 22H2です。
fastapi[standard]==0.115.6
# tester
pytest==8.3.4
pytest-cov==6.0.0
fastapi[standard]
とすることで、FastAPIと併用するUvicorn(ASGIサーバー)等の代表的なパッケージ群を同時にインストールできます。
同時インストールされるパッケージ一覧とそのバージョン情報は、FastAPIのpyproject.tomlをご参照ください。
テストを行わない場合は、# tester
のインストールは省略可能です。
各記事の仮想環境は標準ライブラリのvenvで構築しております。
poetryやuvなど、すでに使用しているパッケージマネージャーがあれば適時読み替えて下さい。