一、FastAPI的特點
基於Python3.6+版本的、用於構建API現代的、高性能的web框架,其有以下特點:
- 性能優越
- 開發效率高
- 減少約40%的人為bug
- 易學易用
- 精簡編碼、代碼重復率低
- API開發標准化、自帶API交互文檔,便於交付
FastAPI是建立在Pydantic和Starlette基礎上的,Pydantic是一個基於Python類型提示來定義數據驗證、序列化和文檔的庫。Starlette是一種輕量級的ASGI框架/工具包,是構建高性能Asyncio服務的理性選擇。
二、快速上手
1、安裝FastAPI
pip install fastapi[all]
這個命令會安裝fastapi所有相關依賴的包,主要是Pydantic和Starlette所需要的依賴。以上安裝包括了uvicorn,它是運行代碼的服務器。
2、Example
- example.py
from fastapi import FastAPI app = FastAPI() @app.get("/") async def root(): return {"message":"Hello World"}
運行服務器:
uvicorn example:app --reload
- uvicorn: 服務器
- example :example.py 模塊
- app:example.py中通過FastAPI創建的對象
- --reload:代碼修改后自動重啟
打開瀏覽器進行訪問http://127.0.0.1:8000,結果如下:
{ "message":"Hello World" }
當然,可以通過交互式文檔查看http://127.0.0.1:8000/docs: