FastApi Post请求

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/

你可能感兴趣的:(FastApi Post请求)