首頁  >  文章  >  後端開發  >  如何建立同時接受表單和 JSON 資料的 FastAPI 端點?

如何建立同時接受表單和 JSON 資料的 FastAPI 端點?

DDD
DDD原創
2024-10-27 11:33:02246瀏覽

 How Can I Create a FastAPI Endpoint That Accepts Both Form and JSON Data?

建立 FastAPI 端點以實現靈活的資料接收

在 FastAPI 中,可以建立一個可以處理表單和 JSON 請求體的端點。

選項 1:動態決定 Content-Type

  • 建立一個依賴函數來檢查 Content-Type 標頭。
  • 使用基於 Starlette 的方法解析請求正文
  • 使用 try- except 區塊捕獲任何解析錯誤。

選項 2:使用選用參數

  • 使用標記為可選的檔案和表單參數定義端點。
  • 檢查參數是否有值以確定表單資料是否已傳送。
  • 否則,嘗試將請求正文解析為JSON。

選項 3:使用中間件分隔端點

  • 為 JSON 和表單資料請求建立單獨的端點。
  • 使用一個中間件來檢查 Content-Type 並將請求重新導向到適當的端點。

選項 4:考慮組合請求

  • 利用 Pydantic 的 model_validate_json () 方法來解析表單參數中傳遞的 JSON 主體。
  • 透過將端點參數設為可選,允許在單一請求中提交 JSON 和表單資料。

以上是如何建立同時接受表單和 JSON 資料的 FastAPI 端點?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn