パラメータ化されたリクエストに対して FastAPI でパス パラメータを使用する方法

王林
リリース: 2023-07-28 15:13:46
オリジナル
1108 人が閲覧しました

FastAPI でパラメータ化されたリクエストにパス パラメータを使用する方法

FastAPI は、標準 API (Pydantic や OpenAPI など) に基づいて開発された、高速 (高パフォーマンス) で使いやすい最新の Web フレームワークです。 FastAPI では、パス パラメータを使用してリクエストをパラメータ化し、さまざまなリクエストをより適切に処理できます。

パス パラメーターは、リソースの特定のインスタンスを識別するために使用される URL の部分を指します。パス パラメーターを使用すると、さまざまなニーズに応じて Web API から特定のデータを取得できます。以下では、パス パラメーターを使用して FastAPI でパラメーター化されたリクエストを行う方法を紹介し、対応するコード例を示します。

まず、FastAPIモジュールとPathモジュールをインポートし、appオブジェクトを作成する必要があります:

from fastapi import FastAPI, Path app = FastAPI()
ログイン後にコピー

次に、ルーティング パスでパス パラメータを定義できます。パス パラメーターは中括弧で囲まれた文字列で、パラメーターの名前とデータ型を定義できます。たとえば、item_idのパス パラメータを定義できます:

@app.get("/items/{item_id}") async def read_item(item_id: int): return {"item_id": item_id}
ログイン後にコピー

上記の例では、ルーティング パス/items/{item_id}を定義します。パス パラメーターitem_idのデータ型をintとして定義します。関数パラメータでは、パス パラメータの名前item_idを直接使用して値を取得できます。

サーバー/items/42にリクエストを送信すると、FastAPI はパス パラメーターの値を対応する関数に自動的に渡し、パラメーターの値として返します。上の例では、パラメータの名前と値を含む JSON オブジェクトが返されます。

{"item_id": 42}
ログイン後にコピー

path パラメータに他のパラメータを指定することもできます。たとえば、パスパラメータの最小値と最大値を指定できます。以下は例です:

@app.get("/users/{user_id}") async def read_user(user_id: int = Path(..., ge=1, le=100)): return {"user_id": user_id}
ログイン後にコピー

上の例では、2 つのパラメータgeleを使用してuser_idの範囲を制限します。これは、user_idの値が 1 以上、100 以下である必要があることを示します。送信するリクエストのuser_idがこの範囲を超える場合、FastAPI は HTTP 例外応答を送信します。

通常のデータ型に加えて、パス パラメーターのデータ型として列挙型も使用できます。以下に例を示します。

from enum import Enum class Size(str, Enum): small = "small" medium = "medium" large = "large" @app.get("/items/{item_id}/size/{size}") async def read_item_size(item_id: int, size: Size): return {"item_id": item_id, "size": size}
ログイン後にコピー

上の例では、Size列挙クラスを定義し、それをパラメータsizeのデータ型として使用します。リクエスト/items/42/size/smallを送信すると、FastAPI はパス パラメーターの値を対応する関数に渡し、パラメーターの値として返します。

パス パラメーターを使用してリクエストをパラメーター化することは、FastAPI を使用して Web API でさまざまなリクエストを処理するための重要な手法の 1 つです。パス パラメーターを通じて、さまざまなルーティング パスを定義し、さまざまなニーズに応じてサーバーから特定のデータを取得できます。上記の例では、パス パラメーターを使用してリクエストをパラメーター化する方法を示し、対応するコード例を提供します。

要約すると、パス パラメーターを使用して FastAPI でパラメーター化されたリクエストを行う手順は次のとおりです。

  1. PathモジュールとFastAPI# をインポートします。 ## 図書館 。
  2. appオブジェクトをアプリケーションのインスタンスとして作成します。
  3. ルーティング パスでパス パラメーターを定義し、中かっこを使用してパラメーターを囲みます。
  4. 対応する関数では、パス パラメーターの名前を直接使用してパラメーターの値を取得できます。
パス パラメーターを使用すると、さまざまなリクエストをより適切に処理し、サーバーから特定のデータを正確に取得できます。

参考:

    [FastAPI ドキュメント](https://fastapi.tiangolo.com/)
この記事が理解に役立つことを願っていますパラメータ化されたリクエストに対して FastAPI でパス パラメータを使用する方法が役立ちます。

以上がパラメータ化されたリクエストに対して FastAPI でパス パラメータを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!