主页
文章
知识库
云盘
工具
登录
登录
注册
忘记密码
反馈
文章
FastAPI 中的 embed 参数详解
FastAPI 中的 embed 参数详解
lyjin
2024-08-01
在使用 FastAPI 开发 API 时,有时需要从请求体中提取单个字段。在这种情况下,FastAPI 提供了一个非常有用的参数:`embed`。本文将详细介绍 embed 参数的用途和使用方法。 #### 什么是 embed 参数? `embed` 参数用于指定在接收单个字段时,是否将该字段嵌入到一个 JSON 对象中。简单来说,当你需要接收一个单独的字段并将其嵌入到请求体的 JSON 对象中时,可以使用 `embed=True`。 #### 为什么使用 embed 参数? 在某些情况下,希望请求体中的字段是嵌入到一个 JSON 对象中的,这样可以使 API 更加灵活和清晰。`embed` 参数可以实现这一点,避免请求体直接传递单个值。 ##### 使用示例 假设有一个 FastAPI 接口,需要接收一个名为 client_id 的字符串类型参数。 ##### 不使用 embed 参数 ``` from fastapi import FastAPI, Body app = FastAPI() @app.post("/deploy") def sc_deploy(client_id: str = Body(...)): return {"client_id": client_id} ``` 在这种情况下,请求体应该是一个直接的字符串值: ``` "your_client_id_value" ``` ##### 使用 embed 参数 ``` from fastapi import FastAPI, Body app = FastAPI() @app.post("/deploy") def sc_deploy(client_id: str = Body(..., embed=True)): return {"client_id": client_id} ``` 在这种情况下,请求体应该是一个 JSON 对象,包含 client_id 键: ``` { "client_id": "your_client_id_value" } ``` #### 结论 `embed` 参数在处理请求体中的单个字段时非常有用,可以使 API 更加清晰和易于维护。
分享
×
用手机扫码分享
没有评论
请登陆后评论
新建评论
移除
关闭
提交