FastAPI 學習手冊


作者:麥克煎蛋   出處:https://www.cnblogs.com/mazhiyong/ 轉載請保留這段聲明,謝謝!

 

2020.08.06   完成工程示例,已上傳至GitHub:  https://github.com/zhiyongma/fastproject 

2020.07.30   第一遍基本翻譯完成了,前后可能還需要整理下

                   另外打算補充下部分基礎知識,比如協程等;之后打算整理示例工程   

                   再之后打算研究下Starlette 和 Pydantic,以及異步框架的基礎運行機制等等。。。

2020.07.15    重新歸納了目錄分類,並將前后相關聯的內容整理到了一個文件中

------------------------------------------------------------------------

目前采用的Python web開發框架一直是Flask,但實際上只用到了其中的API功能。

偶然間了解到了FastAPI,初步感覺還是挺好的,能滿足API的功能需求,性能又大大提升了。

先基於官方的文檔學習下,后續再進行工程實踐。

 

官方地址:https://fastapi.tiangolo.com/

主體內容是基於官方文檔的翻譯,同時根據自己的理解加以適當調整。

 

目前基本通讀完了官方文檔,但還需要消化和理解下,然后再逐步整理文檔。

總的來說,FlaskApi無論從性能還是業務功能的完善度來說,都遠遠勝於Flask。

 

如果比較熟悉FastAPI的話,實際代碼管理應該比Flask更便捷,並且重復代碼量也會少一些。

可交互式文檔是一個比較強大的功能,不僅便於輸出接口文檔,而且方便隨時調試,翻譯過程中做了簡略。可在實踐中自行體驗。

 

------------------------------------------------------------------------

在進行FastAPI學習的時候,先熟悉下一些基礎概念對整體的學習是大有幫助的。

FastAPI 基礎理論

FastAPI 異步代碼、並發和並行  (這篇文章翻譯的老費勁了)

Python協程

Python協程(一) 概述

Python協程(二) Asyncio入門

Python協程(三) Asyncio運行

 

FastAPI 基礎學習

FastApi 基礎學習(一) 概述 

FastApi 基礎學習(二) 開發環境安裝 

FastApi 基礎學習(三) Pydantic 做類型強制檢查

FastAPI 基礎學習(四) 路徑參數

FastAPI 基礎學習(五) 請求參數

FastAPI 基礎學習(六) Request Body(I)

FastAPI 基礎學習(七) Request Body(II)

FastAPI 基礎學習(八) 參數附加信息 (一)

FastAPI 基礎學習(九) 參數附加信息 (二)

FastAPI 基礎學習(十) Pydantic復雜模型

FastAPI 基礎學習(十一) 復雜數據類型

FastAPI 基礎學習(十二) Cookie操作

FastAPI 基礎學習(十三) Header操作

FastAPI 基礎學習(十四) Response自定義狀態碼

FastAPI 基礎學習(十五) 直接使用Request

FastAPI Response

FastAPI Response(一) Response模型

FastAPI Response(二) 直接返回Response對象

FastAPI Response(三) 定制化的Response

FastAPI Response(四) 高級定制的Response

FastAPI 中間件

FastAPI 中間件(一) 自定義中間件

FastAPI 中間件(二) 高級中間件

FastAPI 中間件(三) 跨域資源共享中間件

FastAPI 依賴注入系統

FastAPI 依賴注入系統(一) 簡介

FastAPI 依賴注入系統(二) 依賴項類

FastAPI 依賴注入系統(三) 子依賴項

FastAPI 依賴注入系統(四) 基於路徑操作裝飾器的依賴項

FastAPI 依賴注入系統(五) 帶有yield功能的依賴項

FastAPI 依賴注入系統(六) 可參數化的依賴項

FastAPI 安全機制

FastAPI 安全機制(一) 簡介 

FastAPI 安全機制(二) 基於OAuth2和JWT的Token認證機制(一)生成token

FastAPI 安全機制(三) 基於OAuth2和JWT的Token認證機制(二)用戶登陸及驗證

FastAPI 安全機制(四) OAuth2 scopes 

FastAPI 數據庫訪問

FastAPI 數據庫訪問(一)使用SQLAlchemy訪問關系數據庫

FastAPI 數據庫訪問(二)使用SQLAlchemy異步訪問關系數據庫 

FastAPI 進階知識

FastAPI 進階知識(一) 表單數據

FastAPI 進階知識(二) JSON兼容編碼

FastAPI 進階知識(三) 錯誤處理

FastAPI 進階知識(四) 后台任務

FastAPI 進階知識(五) 子應用

FastAPI 進階知識(六) 啟動-關閉事件

FastAPI 進階知識(七) 在Request中存儲附加信息

FastAPI WebSockets

FastAPI WebSockets

FastAPI 工程管理

FastAPI 工程管理(一) 工程目錄管理

FastAPI 工程管理(二) 工程設置 

FastAPI 工程管理(三) 工程部署 

FastAPI 工程管理(四) 工程示例

 

關於交互式文檔的配置信息這里不再贅述,可以參考以下相關原文:

https://fastapi.tiangolo.com/tutorial/metadata/

https://fastapi.tiangolo.com/advanced/path-operation-advanced-configuration/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM