【FastAPI】请求体

在 FastAPI 中,请求体(Request Body)是通过请求发送的数据,通常用于传递客户端提交的信息。FastAPI 使得处理请求体变得非常容易。

请求体是客户端发送给 API 的数据。响应体是 API 发送给客户端的数据

注:不能使用 GET 操作(HTTP 方法)发送请求体。
要发送数据,你必须使用下列方法之一:POST(较常见)、PUT、DELETE 或 PATCH。

具体代码例如:

from typing import Unionfrom fastapi import FastAPI
from pydantic import BaseModelclass Item(BaseModel):name: strdescription: Union[str, None] = Noneprice: floattax: Union[float, None] = Noneapp = FastAPI().post("/items/")
async def create_item(item: Item):return item

运行结果用文档测试得:
在这里插入图片描述
仅使用了 Python 类型声明,FastAPI 将会:
将请求体作为 JSON 读取。
转换为相应的类型(在需要时)。
校验数据。
如果数据无效,将返回一条清晰易读的错误信息,指出不正确数据的确切位置和内容。
将接收的数据赋值到参数 item 中。
由于你已经在函数中将它声明为 Item 类型,你还将获得对于所有属性及其类型的一切编辑器支持(代码补全等)。
为你的模型生成 JSON 模式 定义,你还可以在其他任何对你的项目有意义的地方使用它们。
这些模式将成为生成的 OpenAPI 模式的一部分,并且被自动化文档 UI
所使用。

请求体 + 路径参数 + 查询参数

同时声明请求体、路径参数和查询参数。

FastAPI 会识别它们中的每一个,并从正确的位置获取数据。
from typing import Unionfrom fastapi import FastAPI
from pydantic import BaseModelclass Item(BaseModel):name: strdescription: Union[str, None] = Noneprice: floattax: Union[float, None] = Noneapp = FastAPI().put("/items/{item_id}")
async def update_item(item_id: int, item: Item, q: Union[str, None] = None):result = {"item_id": item_id, **item.dict()}if q:result.update({"q": q})return result

item_id 就是路径参数
Item 是请求体
q 就是查询参数

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/632733.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024年回炉计划之排序算法(一)

算法是计算机科学和信息技术中的重要领域,涉及到问题求解和数据处理的方法。要学习算法,你可能需要掌握以下一些基本知识: 基本数据结构: 了解和熟练使用各种数据结构,如数组、链表、栈、队列、树和图等。数据结构是算…

Java导出Excel并合并单元格

需求:需要在导出excel时合并指定的单元格 ruoyi excel 项目基于若伊框架二次开发,本着能用现成的就不自己写的原则,先是尝试了Excel注解中needMerge属性 /*** 是否需要纵向合并单元格,应对需求:含有list集合单元格)*/public boolean needMer…

4人遇难,北京突发火情 富维烟火识别防止悲剧再次发生

在北京一处居民区,一场突如其来的火灾夺走了四条宝贵的生命。火情迅速蔓延,烟雾弥漫,居民们猝不及防。这一悲剧再次提醒我们,火灾预防和早期识别的重要性不容忽视。 在这样的背景下,北京富维图像公司开发的FIS智能图像…

搭建自己的媒体矩阵-关于三微一端的媒体矩阵最简方案

引言 随着互联网的快速发展,媒体矩阵已成为品牌宣传的重要战略。通过搭建自己的媒体矩阵,企业、品牌和个人能够更有效地触达目标受众,传递信息、建立品牌形象,并与用户进行深度互动。本文将深入探讨如何制定一个有效的三微一端媒…

高光谱分类论文解读分享之Grid Network: 基于各向异性视角下特征提取的高光谱影像分类

IEEE GRSL 2023:Grid Network: 基于各向异性视角下特征提取的高光谱影像分类 题目 Grid Network: Feature Extraction in Anisotropic Perspective for Hyperspectral Image Classification 作者 Zhonghao Chen , Student Member, IEEE, Danfeng Hong , Senior …

【H3C】配置AAA认证和Telnet远程登陆,S5130 Series交换机

AAA配置步骤为: 1.开启telent远程登陆服务 2.创建用户,设置用户名、密码、用户的服务类型 3.配置终端登录的数量 4.配置vlan-if的ip地址,用来远程登陆 5.允许对应的vlan通过 1.开启telent远程登陆服务 sys …

【驱动】I2C驱动分析(四)-关键API解析

简介 在Linux内核源代码中的driver目录下包含一个i2c目录 i2c-core.c这个文件实现了I2C核心的功能以及/proc/bus/i2c*接口。   i2c-dev.c实现了I2C适配器设备文件的功能,每一个I2C适配器都被分配一个设备。通过适配器访设备时的主设备号都为89,次设备号…

PBR材质纹理下载

03:10 按照视频里的顺序 我们从第6个网站开始倒数 点击本行文字或下方链接 进入查看 6大网站地址 网址查看链接: http://www.uzing.net/community_show-1962-48-48-35.html 06 Tectures Wood Fence 001 | 3D TEXTURES 简介:最大的纹理网站之一&#x…

机器学习:BootStrapping(Python)

import numpy as np import pandas as pd from sklearn.neighbors import KNeighborsClassifier from sklearn.decomposition import PCA # 主成分分析 from sklearn.preprocessing import LabelEncoder, StandardScaler # 类别标签编码,标准化处理 import matplo…

推荐算法常见的评估指标

推荐算法评估指标比较复杂,可以分为离线和在线两部分。召回、粗排、精排和重排由于定位区别,其评估指标也会有一定区别,下面详细讲解。 1 召回评价体系 召回结果并不是最终推荐结果,其本质是为后续排序层服务的,故核…

中国联通助力吴江元荡生态岸线打造5G+自动驾驶生态长廊

吴江,素有“鱼米之乡”“丝绸之府”的美誉,其地理位置优越,地处太湖之滨。近年来,随着长三角生态绿色一体化发展示范区(以下简称“示范区”)的建立,元荡更是声名大噪,成为众多游客心…

GNU Radio简介及流程图搭建

文章目录 前言一、GNU Radio 是什么?二、GNU Radio 安装三、搭建第一个流程图1、创建 GRC 文件2、添加块3、运行流程图 前言 欢迎来到无线通信的世界,初步接触 GNU Radio,对其学习进行一个记录。 一、GNU Radio 是什么? GNU Rad…

el-tree获取当前选中节点及其所有父节点的id(包含半选中父节点的id)

如下图,我们现在全勾中的有表格管理及其下的子级,而半勾中的有工作台和任务管理及其子级 现在点击保存按钮后,需要将勾中的节点id及该节点对应的父节点,祖先节点的id(包含半选中父节点的id)也都一并传给后端,那这个例子里就应该共传入9个id,我们可以直接将getCheckedK…

SpringMVC 拦截器

文章目录 1、拦截器的配置2、拦截器的三个抽象方法3、多个拦截器的执行顺序总结 Spring MVC 拦截器是Spring框架中的一种机制,用于在请求到达处理器之前和渲染视图之前拦截请求,并允许开发者在这两个时间点进行自定义的处理逻辑。拦截器与过滤器&#xf…

openlayers [七] 地图控件controls详解

文章目录 controls 简述常见的 controls 控件使用方法fullscreen 全屏mouseposition 鼠标位置控件overviewmap 鹰眼图scaleline 比例尺控件zoomslider 缩放滑块刻度控件 总结 controls 简述 上篇文章我们将了在地图上的交互(interaction),那些都是一些隐性的需要去…

css3轮播图案例

轮播图案例 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><style>…

数据结构——二叉树的遍历与应用

目录 一.前言 二. 二叉树链式结构的实现 2.1 前置说明 2.2 二叉树的遍历 2.2.1 前序、中序以及后序遍历 前序遍历&#xff1a; 中序遍历递归图&#xff1a; 后序遍历&#xff1a; 2.3节点个数 2.4叶子节点个数 2.5第K层的节点个数 2.6 二叉树查找值为x的节点 2.7 …

【计算机网络】子网划分(经典基础练习题)

一、某主机IP地址为110.35.2.68&#xff0c;子网掩码为255.255.255.128&#xff0c;求网络地址&#xff1f; 二、有A类网络18.0.0.0的子网掩码为255.128.0.0&#xff0c;请问可以划分为多少个子网&#xff1f; 并写出每个子网的子网号&#xff1f; 三、将C类网119.181.25.0划分…

.NetCore Flurl.Http 4.0.0 以上管理客户端

参考原文地址&#xff1a;Managing Clients - Flurl 管理客户端 Flurl.Http 构建在堆栈之上System.Net.Http。如果您熟悉HttpClient&#xff0c;那么您可能听说过这个建议&#xff1a;不要为每个请求创建一个新客户端&#xff1b;重复使用它们&#xff0c;否则将面临后…

MySQL篇—性能压测工具mysqlslap介绍

☘️博主介绍☘️&#xff1a; ✨又是一天没白过&#xff0c;我是奈斯&#xff0c;DBA一名✨ ✌✌️擅长Oracle、MySQL、SQLserver、Linux&#xff0c;也在积极的扩展IT方向的其他知识面✌✌️ ❣️❣️❣️大佬们都喜欢静静的看文章&#xff0c;并且也会默默的点赞收藏加关注❣…