inflearn logo
知識共有
inflearn logo

FastAPIバックエンド開発完全攻略 - Pydantic v2、OAuth 2.0、SQLAlchemy

この講義は、FastAPIでバックエンドAPIを設計・実装する全41回、約22時間のコースです。 FastAPIは簡単に始められるフレームワークです。ドキュメントに目を通して数行書けば、APIが動き始めます。問題はその後です。リクエストがどこを経由して関数のパラメータに到達するのか、依存関係がいつ解放されるのか、例外がどの地点で捕捉されるのかを理解していないと、少し複雑になっただけで行き詰まります。この講義では、その内部動作を追うことに時間をかけます。 まずは開発環境から始めます。condaとvenvの2つの方法を扱い、VS Code REST ClientとSwagger UIでリクエストを送信しながら、HTTPリクエストとレスポンスの構造を身につけます。続いて、パスパラメータとクエリパラメータの違いを扱い、なぜ422エラーが発生するのかを型チェックと関連付けて説明します。 Pydanticは、この講義で最も深く掘り下げる分野です。スカラー型から日付・UUID・Decimal、EnumとLiteralまで確認した後、BaseModelへ進みます。Field()で条件を設定し、@field_validatorで単一・複数フィールドを検証し、@model_validatorのbeforeとafterの動作の違いまで扱います。Pydantic v2を基準としているため、最新の構文をそのまま実務に活用できます。 中盤では、構造化と依存性注入を扱います。APIRouterによるファイル分割、関数やクラスを依存関係として利用する方法、Sub-dependency、デコレータレベルの依存関係を順番に学びます。ここではyieldに4回分を割り当てています。ジェネレータの動作原理、raiseによって呼び出しスタックをさかのぼりながら例外を伝える過程、throw()によってyieldの地点に例外を注入する方法まで掘り下げます。yieldを含む依存関係でリソースの解放がどのように行われるのかを理解すれば、DBセッションの管理も明確になります。 後半では、認証とデータベースを扱います。OAuth 2.0の概念と4つのGrant Typeを整理し、JWTの発行・検証、OAuth2PasswordBearerの内部実行ロジック、Security()とscopesを利用した権限制御を実装します。続いて、Google・Kakao・Naverのクライアントを自分で設定し、Authorization Code Grant方式でソーシャルログインを組み込みます。最後にSQLAlchemy ORMを扱い、create_engineのURL構造、DialectとDBAPIの役割、トランザクション、セッション、モデルとテーブルの作成まで進みます。 "動くコード"を超えて、"なぜそのように動くのか"を知りたい方に適した講義です。

1名 が受講中です。

難易度 初級

受講期間 無制限

FastAPI
FastAPI
Python
Python
REST API
REST API
pydantic
pydantic
SQLAlchemy
SQLAlchemy
FastAPI
FastAPI
Python
Python
REST API
REST API
pydantic
pydantic
SQLAlchemy
SQLAlchemy
まだ質問が投稿されていません。
最初の質問を投稿して、インフラーンと一緒に成長しましょう!

期間限定セール

¥6,982

13%

¥8,056