Json数据
contentType:application/json
from typing import List, Optional
from fastapi import FastAPI
from pydantic import BaseModel
app = FastAPI()
class Item(BaseModel):
name: str
description: Optional[str] = None
price: float
tax: Optional[float] = None
tags: List[str] = []
@app.post("/items/", response_model=Item)
async def create_item(item: Item):
return item
表单数据(键值对)
contentType:application/x-www-form-urlencoded
from fastapi import FastAPI, Form
import uvicorn
app = FastAPI()
@app.post("/login/")
async def login(username: str = Form(...), password: str = Form(...)):
return {"username": username}
if __name__ == '__main__':
uvicorn.run(
app='demo_server:app',
host="0.0.0.0",
port=8000,
workers=4,
reload=True,
debug=True)
pydantic 文档
https://pydantic-docs.helpmanual.io/usage/types/