首页 > 其他分享 >三周精通FastAPI:10 Cookie 参数 和Cookie 参数模型

三周精通FastAPI:10 Cookie 参数 和Cookie 参数模型

时间:2024-10-26 14:19:19浏览次数:7  
标签:cookie None 10 FastAPI tracker 参数 items Cookie

官方文档:Cookie 参数 - FastAPI

定义 Cookie 参数与定义 Query 和 Path 参数一样。

源码:

from typing import Annotated

from fastapi import Cookie, FastAPI

app = FastAPI()


@app.get("/items/")
async def read_items(ads_id: Annotated[str | None, Cookie()] = None):
    return {"ads_id": ads_id}

首先,导入 Cookie

from fastapi import Cookie, FastAPI

声明 Cookie 参数的方式与声明 Query 和 Path 参数相同。第一个值是默认值,还可以传递所有验证参数或注释参数:

async def read_items(ads_id: Annotated[str | None, Cookie()] = None):

"技术细节"

Cookie 、Path 、Query 是兄弟类,都继承自共用的 Param 类。

注意,从 fastapi 导入的 QueryPathCookie 等对象,实际上是返回特殊类的函数。

"说明"

必须使用 Cookie 声明 cookie 参数,否则该参数会被解释为查询参数。

小结

使用 Cookie 声明 cookie 参数的方式与 Query 和 Path 相同。

Cookie参数模型



如果你有一组相关的Cookie,你可以创建一个Pydantic模型来声明它们。

标签:cookie,None,10,FastAPI,tracker,参数,items,Cookie
From: https://blog.csdn.net/skywalk8163/article/details/143207781

相关文章

  • MVC架构 & Cookie
    MVC架构CookieCookie:客户端会话技术,将数据保存到客户端,以后每次请求都携带Cookie数据进行访问。发送Cookie创建Cookie对象,并设置数据Cookiecookie=newCookie("key","value");发送Cookie到客户端:使用response对象response.addCookie(cookie);3.2获取Cookie......
  • Codeforces Round 981 (Div. 3) 10.24 (ABCDE)题解
    CodeforcesRound981(Div.3)2024.10.24题解A.SakurakoandKosuke题意:\(Sakurako\)与\(Kosuke\)正在玩游戏,一个点在原点\(x=0\)的起始位置。对于第\(i\)次操作,点会移动\(2\asti-1\)步。两人轮流操作,Sakurako先手,每次将点往负方向移动;Kosuke每次将点往正方向移动......
  • 1024程序员节——我的程序员之路,Passion
    #1024程序员节|征文#时光飞逝,又到了一年一度的1024程序员节。大学毕业,步入社会,转眼间已经工作快7年了,总结下自己这些年来的经历与程序之路。踏入社会2018年,我从某普通二本毕业,学的是信息与计算科学,一个所学之广涉及数学,计算机,金融的专业(本来是冲着计算机读的该专业)。......
  • 100种算法【Python版】第10篇——深度优先搜索
    本文目录1深度优先搜索2示例说明:迷宫路径查找2.1问题描述2.2DFS解决逻辑2.3python代码3算法应用3.1数独问题3.1.1DFS求解逻辑3.1.2python代码3.2单词搜索3.2.1python代码3.2.2代码逻辑4总结4.1优点4.2缺点1深度......
  • 计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-21
    计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-21目录文章目录计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-21目录1.TheFairLanguageModelParadox摘要研究背景问题与挑战如何解决创新点算法模型实验效果重要数据与结论推荐阅......
  • 24-10-21-读书笔记(二十九)-《契诃夫文集》(五)上([俄] 契诃夫 [译] 汝龙)不跟自己过不去,什
    文章目录《契诃夫文集》(五)上([俄]契诃夫[译]汝龙)不跟自己过不去,什么事情自己都过得去。目录阅读笔记总结《契诃夫文集》(五)上([俄]契诃夫[译]汝龙)不跟自己过不去,什么事情自己都过得去。  1886年之后的契诃夫是开了挂认真写短篇小说的神,之后第五卷~第十卷我应......
  • Redis5.0.10集群搭建
    参考文档https://www.cnblogs.com/hmwh/p/10289138.htmlhttps://www.cnblogs.com/zgqbky/p/11792141.html以下操作均需在每台服务器上执行安装依赖关系yuminstallmakezlibopenssl*ImageMagick-develgcc*rubygems-y2、创建节点目录mkdir-p/opt/app/redis-cluste......
  • 2024-10-25 学习人工智能的Day15 Pandas(2)
    二、函数1、常用的统计学函数函数名称描述说明count()统计某个非空值的数量sum()求和mean()求均值median()求中位数std()求标准差min()求最小值max()求最大值abs()求绝对值prod()求所有数值的乘积案例:#创建一个示例DataFramedata={'A':[1,2,3,4,5],......
  • 解决Mysql:ERROR 1045 (28000):Access denied for user ‘root‘@‘localhost‘ (usin
    遇到 ERROR1045(28000):Accessdeniedforuser'root'@'localhost'(usingpassword:NO) 错误时,通常是因为尝试以root用户身份登录MySQL时没有提供密码或提供的密码不正确。以下是解决此问题的步骤:检查是否设置了密码:如果从未为root用户设置过密码,可以尝试在命......
  • springboot医疗物品采购系统-计算机设计毕业源码10210
    摘 要本文基于SpringBoot框架,设计并实现了一个医疗物品采购系统。该系统旨在解决医疗物品采购中的管理和信息化问题,提供便捷的服务和支持。通过系统的设计与实现,实现了医疗物品的供应商家管理、物品类型管理、物品仓库管理、采购计划管理、采购入库管理、出库申请管理、......