FastAPI POST 方法接收参数详解
在 FastAPI 中,可以通过在路由函数的参数中声明需要接受的参数来实现接收 Post 请求的参数。\n\n以下是一个示例:\n\npython\nfrom fastapi import FastAPI\n\napp = FastAPI()\n\n@app.post("/items/")\nasync def create_item(item: Item):\n # item 是一个参数,用于接收请求的主体作为 JSON\n return item\n\n\n在上述示例中,我们在路由函数的参数中声明了一个item参数,并指定了其类型为Item。这样,在接收到 Post 请求时,FastAPI 会自动解析请求的主体作为 JSON,并将其转换为Item对象。\n\n需要注意的是,Item是一个自定义的数据模型,可以通过 Pydantic 库定义。例如:\n\npython\nfrom pydantic import BaseModel\n\nclass Item(BaseModel):\n name: str\n price: float\n\n\n在上述示例中,我们定义了一个名为Item的数据模型,并声明了两个字段:name 和 price。这样,当接收到 Post 请求时,FastAPI 会自动将请求的主体作为 JSON 解析,并将其转换为Item对象,其中name字段的值将赋给item.name,price字段的值将赋给item.price。\n\n此外,如果想要接收其他的参数,可以通过在路由函数的参数中声明它们。例如,如果想要接收一个路径参数,可以在路由函数的参数中声明一个名为item_id的参数:\n\npython\n@app.post("/items/{item_id}")\nasync def create_item(item_id: int, item: Item):\n # item_id 是一个路径参数,item 是一个请求主体作为 JSON\n return {"item_id": item_id, "item": item}\n\n\n在上述示例中,我们在路由函数的参数中声明了一个item_id参数,并指定了其类型为int。这样,在接收到 Post 请求时,FastAPI 会自动解析路径中的item_id值,并将其赋给item_id参数。\n\n综上所述,通过在路由函数的参数中声明需要接收的参数,并指定其类型,就可以实现在 FastAPI 中接收 Post 请求的参数。
原文地址: https://www.cveoy.top/t/topic/qExt 著作权归作者所有。请勿转载和采集!