当前位置: 首页 > news >正文

泉州网站建设-泉州网站建设公司网站开发需求模板模板

泉州网站建设-泉州网站建设公司,网站开发需求模板模板,wordpress计费搜索,网站建设没有业务怎么办FASTAPI系列 14-使用JSONResponse 返回JSON内容 文章目录 FASTAPI系列 14-使用JSONResponse 返回JSON内容前言一、默认返回的JSON格式二、JSONResponse 自定义返回三、自定义返回 headers 和 media_type总结 前言 当你创建一个 FastAPI 接口时#xff0c;可以正常返回以下任意…FASTAPI系列 14-使用JSONResponse 返回JSON内容 文章目录 FASTAPI系列 14-使用JSONResponse 返回JSON内容前言一、默认返回的JSON格式二、JSONResponse 自定义返回三、自定义返回 headers 和 media_type总结 前言 当你创建一个 FastAPI 接口时可以正常返回以下任意一种数据dictlistPydantic 模型数据库模型等等。FastAPI 默认会使用 jsonable_encoder 将这些类型的返回值转换成 JSON 格式默认情况下会以content-type: application/json 格式返回。 在有些情况下我们需要在路径操作中直接返回Response对象这样我们能有更多的操作灵活性比如自定义头headers 信息、自定义Cookie信息等 提示以下是本篇文章正文内容下面案例可供参考 一、默认返回的JSON格式 定义一个字典类型然后fastpai会默认转化成json然后返回 from fastapi import FastAPI import uvicornapp FastAPI()app.get(/users) def users():user {user_name: Teacher Li,email: Teacher_Liqq.com}return user当使用get请求时返回的格式 HTTP/1.1 200 OK date: Tue, 25 Mar 2023 10:40:41 GMT server: uvicorn content-length: 36 content-type: application/json{user_name: Teacher Li,email: Teacher_Liqq.com} 二、JSONResponse 自定义返回 可以使用 from starlette.responses import JSONResponse 定制返回内容包含响应状态码响应headers 和 响应body JSONResponse 继承自 Response 类部分源码如下 class JSONResponse(Response): media_type application/json def __init__( self, content: typing.Any, status_code: int 200, headers: typing.Optional[typing.Dict[str, str]] None, media_type: typing.Optional[str] None, background: typing.Optional[BackgroundTask] None, ) - None: super().__init__(content, status_code, headers, media_type, background)JSONResponse可传参数 content 响应body内容str 或者 bytes.status_code 响应状态码int类型默认200.headers 响应头部dict类型.media_typemedia type. 例如text/html.background后台任务 自定义 JSONResponse 响应 status_code 可以自定义状态码FastAPI 会自动包含 Content-Length以及Content-Typecharset等头信息。 from fastapi import FastAPI, status from fastapi.responses import JSONResponse import uvicornapp FastAPI()app.get(/users) def users():user {user_name: Teacher Li,email: Teacher_Liqq.com}return JSONResponse(contentuser, status_codestatus.HTTP_200_OK)当使用get请求时返回的格式 HTTP/1.1 200 OK date: Tue, 25 Mar 2023 10:40:41 GMT server: uvicorn content-length: 36 content-type: application/json{user_name: Teacher Li,email: Teacher_Liqq.com} 三、自定义返回 headers 和 media_type 响应头部添加 headers 内容和设置 media_type 响应 body 媒体类型 app.get(/resp/users) async def users():user {user_name: Teacher Li, email: Teacher_Liqq.com}return JSONResponse(contentuser,status_codestatus.HTTP_201_CREATED,headers{x-token: abcdefghijklmnop},media_typetext/html)当使用get请求时返回的格式 HTTP/1.1 201 Created date: Tue, 25 Mar 2023 10:40:41 GMT server: uvicorn x-token: abcdefghijklmnop content-length: 36 content-type: text/html{user_name: Teacher Li,email: Teacher_Liqq.com} 总结 jsonable_encoder 是 FastAPI一个用于构建高性能 Web 应用的现代、异步 Python 框架中的一个实用函数其主要功能是对 Pydantic 模型或任何其他可迭代对象进行编码使其转换为可以安全地序列化为 JSON 的格式。 该函数会遍历对象的所有属性并对其中的复杂数据类型如 datetime、UUID 等进行特殊处理确保它们能够被 JSON 序列化引擎识别和正确处理。例如datetime 对象会被转换为 ISO8601 格式的字符串而 UUID 对象则通常会转换为字符串形式。 使用 jsonable_encoder 可以确保你在将数据返回给前端或者存入数据库时不会因为数据类型的复杂性而出现问题。这极大地方便了开发者处理 API 返回的数据结构提高了开发效率。 总结来说jsonable_encoder 在 FastAPI 中的作用是提供一种便捷的方法将符合 Pydantic 模型或其他特定类型的数据结构转换成适合 JSON 序列化的格式。
http://www.hkea.cn/news/14382172/

相关文章:

  • 房地产公司网站模板wordpress 预加载
  • 网站推广的策略有哪些响应式网站用什么单位
  • 织梦网站怎样做seojsp网站开发 pdf
  • 新郑龙湖网站建设银川网站建设效果
  • 审计网站建设毕业设计php网站开发工程师招聘会
  • 电子毕业设计网站建设吾爱源码
  • 深圳哪家网站建设好网站开发上市公司
  • 广州市网站建设科技进销存永久免费
  • 数据查询网站上海品划网站建设有限公司
  • 做网站的图片的内存网站怎么加关键词做优化
  • 做网站付费流程长春网站建设技术托管
  • 中文旅游网站html模板顺德网站建设多少钱
  • 6网站建设设计qq空间刷赞网站推广
  • 代理企业网站备案大气蓝色企业网站模板
  • 图形网站建设软件杰商网西安网站建设
  • 做响应式网站用什么框架关于申请网站建设
  • 网站开发前端制作中装建设装饰有限公司
  • 建网站系统能换吗老哥们给个uc能看的
  • 做任务反佣金的网站网站首页建设
  • 网站建设公司营业执照经营范围推广普通话手抄报内容怎么写
  • 为一个网站设计一个推广方案建设工程中标查询网站
  • 建设网站的条件佛山的网站建设
  • 做网站淮南支付网站开发费可以做无形资产
  • 建一个企业网站多少钱静态网站开发课程
  • 实训做网站收获做网站的客户资料交换qq群
  • 手车做网课网站网站运营小结
  • 小白如何建网站深圳市建设局质监站官方网站
  • 织梦网站地图插件网站建设下单源码
  • 上海最专业的网站设计制东莞保安公司最新招聘
  • 网站维护广州建网站学生如何做网站