ホームページ >バックエンド開発 >Python チュートリアル >FastAPI で POST リクエストを処理し、JSON レスポンスを返す方法
FastAPI で POST リクエストを処理し、JSON レスポンスを返す方法
FastAPI は、標準の Python 型ヒントに基づいた、高速 (高パフォーマンス) で使いやすい最新の Web フレームワークです。強力な非同期サポートがあり、同時実行性の高い状況を簡単に処理できます。 FastAPI では、簡潔なコードを使用して POST リクエストを処理し、JSON レスポンスを返すことができます。この記事では、FastAPI でこのタスクを実行する方法を説明し、対応するコード例を示します。
まず、FastAPI アプリケーションを作成する必要があります。アプリケーションを作成する基本コードは次のとおりです。
from fastapi import FastAPI app = FastAPI()
次に、POST リクエストを処理するルートを作成する必要があります。 FastAPI はデコレータを使用してルートを定義します。 POST リクエストの処理例を次に示します。
@app.post("/api/submit") async def submit_data(data: dict): # 在这里进行数据处理 # ... # 返回JSON响应 return {"message": "Data submitted successfully"}
上の例では、デコレータ @app.post
を使用し、パス /api/submit でルートを定義しました。
、リクエストメソッドはPOSTです。ルーティング関数 submit_data
は、data
という名前のパラメータを受け入れます。パラメータ タイプは dict
で、これは POST リクエストでデータを受信するために使用されます。
submit_data
関数では、データの検証、データベースへの保存などのデータ処理ロジックを実行できます。次に、return
ステートメントを使用して JSON 応答を返します。この例では、キー "message"
と値 "Data submit completed success"
を含むディクショナリを返します。
FastAPI では、async def
を使用して非同期関数を定義することに注意してください。これにより、フレームワークの非同期機能を最大限に活用してパフォーマンスを向上させることができます。
アプリケーションを実行するには、次のコードを追加する必要があります:
if __name__ == "__main__": uvicorn.run(app, host="0.0.0.0", port=8000)
上記のコードにより、アプリケーションはローカルの 0.0.0.0
アドレスで実行されます。ポート 8000。
これで、FastAPI で POST リクエストを処理し、JSON レスポンスを返す基本的なコードが完成しました。 POST リクエストを /api/submit
に送信し、リクエスト本文に JSON データを含めることで、アプリケーションをテストできます。
以下は、Python requests
ライブラリを使用して POST リクエストを送信する例です。
import requests data = {"name": "John", "age": 30} response = requests.post("http://localhost:8000/api/submit", json=data) print(response.json())
上の例では、辞書 data## を作成しました。 # 、これにはいくつかのデータが含まれています。次に、
requests.post メソッドを使用して POST リクエストを送信し、
json パラメーターを介してデータを JSON として送信します。最後に、
response.json() メソッドを使用して応答 JSON データを取得し、出力します。
以上がFastAPI で POST リクエストを処理し、JSON レスポンスを返す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。