FastAPI是一個高性能的Python Web框架,能夠快速構(gòu)建Web API服務(wù)。它支持各種數(shù)據(jù)格式的返回值,其中返回JSON是最常用的一種形式。
from fastapi import FastAPI
from pydantic import BaseModel
app = FastAPI()
class Item(BaseModel):
name: str
price: float
is_offer: bool = None
@app.post("/items/")
async def create_item(item: Item):
item_dict = item.dict()
if item.is_offer:
item_dict.update({"price_with_offer": item.price - 1})
return item_dict
以上代碼展示了使用FastAPI返回JSON數(shù)據(jù)的示例。代碼中定義了一個名為Item的數(shù)據(jù)模型,包含name、price和is_offer三個屬性。接著通過路由設(shè)置了一個HTTP POST請求,同時將Item數(shù)據(jù)模型作為參數(shù)傳遞進(jìn)去。
在函數(shù)體中,首先將傳入的Item對象轉(zhuǎn)換成字典,然后判斷is_offer是否為True,如果是的話即添加一個附加的鍵值對。最后將變量item_dict作為返回值返回,F(xiàn)astAPI會自動將字典格式的數(shù)據(jù)轉(zhuǎn)換成JSON格式的響應(yīng)結(jié)果。
綜上所述,F(xiàn)astAPI提供了非常方便靈活的JSON返回操作,讓開發(fā)者可以更加簡單地進(jìn)行Web API服務(wù)的構(gòu)建。