https://cloud.tencent.com/developer/article/1431448
使用FastAPI可以非常快速的構建出一套高性能的api服務。下面通過實戰演示一下:
fastapi目前僅支持python 3.6+以上版本。
一、安裝fastapi和uvicorn
pip install fastapi pip install uvicorn
二、新建一個main.py文件,編寫如下代碼
from fastapi import FastAPI app = FastAPI() @app.get("/") def read_root(): return {"Hello": "World"} @app.get("/items/{item_id}") def read_item(item_id: int, q: str = None): return {"item_id": item_id, "q": q}
三、運行接口服務
在命令行,執行下面的命令
uvicorn main:app --reload
四、請求接口
運行成功后在瀏覽器打開http://127.0.0.1:8000 ,你將在一個JSON格式響應結果:
{'hello':'world'}
再次在瀏覽器打開http://127.0.0.1:8000/items/5?q=somequery,你將在一個如下JSON格式響應結果:
{'item_id':5,'q':'somequery'}
五、可視化API文檔
現在在瀏覽器中打開http://127.0.0.1:8000/docs,你會看到一個可以交互的api文檔
你也可以其他方法的裝飾器:
@app.post()
@app.put()
@app.delete()
還有一些比較少見的方法的裝飾器:
@app.options()
@app.head()
@app.patch()
@app.trace(
建議
你可以使用任意的HTTP方法.
FastAPI不強制任何特定函數。
此處提供的信息,僅供參考,並非必需。
例如,當使用 GraphQL , 你通常會只執行post
方法
總結
- Import
FastAPI
. - 創建一個
app
實例. - 編寫一個 路徑操作裝飾器 (比如
@app.get("/")
). - 編寫一個路徑操作函數 (比如上方的
def root(): ...
). - 運行開發服務器(比如
uvicorn main:app --reload
).