當前位置:成語大全網 - 新華字典 - fastapi教程翻譯(四):Request Body(請求體)

fastapi教程翻譯(四):Request Body(請求體)

當您需要將數據從客戶端(例如瀏覽器)發送到API時,可以將其作為 “請求體” 發送。

請求體 是客戶端發送到您的API的數據。 響應體 是您的API發送給客戶端的數據。

API幾乎總是必須發送壹個 響應體 ,但是客戶端並不需要壹直發送 請求體

定義 請求體 ,需要使用 Pydantic 模型

例如,上面的模型 Item 聲明了壹個 JSON 對象(或Python dict ),例如:

... description 和 tax 屬性是可選的(因為有默認值 None ),所以下面這個 JSON 對象也是有效的:

將上面定義的模型添加到妳的路徑操作中,就和定義Path和Query參數壹樣的方式:

...聲明參數的類型為妳創建的模型 Item .

通過那樣定義Python 類型為 pydantic 的 model , FastAPI 將會:

模型的 JSON Schema 將成為OpenAPI生成模式的壹部分,並將顯示在交互式API文檔中:

並且還將在需要它們的每個路徑操作的API文檔中使用:

在妳的編輯器中,編寫的函數中,妳將會獲得類型提示和補全:

您也會獲得類型操作錯誤檢查:

Pydantic 本身甚至進行了壹些更改以支持此操作。

但是您可以通過 PyCharm 和大多數其他Python編輯器獲得相同的編輯器支持:

在函數內部,您可以直接訪問模型對象的所有屬性:

妳可以同時定義 Path參數 和 請求體參數 .

妳可以同時定義 Path參數 、 Query參數 和 請求體參數 .

** FastAPI **將識別它們中的每壹個並從正確的位置獲取數據。