fastapi Body是什么?怎么用?
时间: 2024-03-17 20:44:41 浏览: 288
`Body` 是 FastAPI 框架中的一个函数,用于声明请求体中的参数。
在 FastAPI 中,我们可以使用 `Body` 函数来声明请求体中的参数,并指定其类型、默认值等属性。例如,我们可以使用如下的方式来声明一个接收 JSON 数据的请求体:
```python
from fastapi import FastAPI, Body
app = FastAPI()
@app.post("/items/")
async def create_item(item: dict = Body(...)):
return item
```
上述代码中,我们定义了一个 `create_item` 接口,它接收一个名为 `item` 的参数,类型为 `dict`,并使用 `Body` 函数来声明它是请求体中的参数。
在这个例子中,我们使用 `...` 来表示这个参数不允许为空值。如果你想要允许这个参数为空值,你可以使用 `None` 或 `default` 参数来指定默认值。
除了基本类型外,`Body` 还支持声明其他类型的参数,例如 `List`、`Dict` 等。例如,我们可以使用如下的方式来声明一个接收 JSON 数组的请求体:
```python
@app.post("/items/")
async def create_items(items: List[dict] = Body(...)):
return items
```
在这个例子中,我们使用 `List[dict]` 来指定参数类型为列表,其中每个元素都是一个字典。这样,我们就可以接收一个 JSON 数组,并将每个元素解析为一个字典对象。
总之,`Body` 函数是 FastAPI 中一个非常重要的函数,它可以帮助我们声明请求体中的参数,并指定它们的类型、默认值等属性。
阅读全文