头部参数和Query,Path和Cookie一样。
eg:
from fastapi import FastAPI, Header
app = FastAPI()
@app.get("/items/")
async def read_items(*, user_agent: str = Header(None)):
return {"User-Agent": user_agent}
Header有一些额外的方法。
所有的标准头部都是用(-)中横线符号。但是在python中这个符号不可用
所以Header将自动将中横线转(-)换为下划线(_).
如果你不想让它自动转换,可以添加convert_underscores=False
...
async def read_items(*, strange_header: str = Header(None, convert_underscores=False)):
...
重复的headers
有可能在使用中接收多个头部值,你可以在定义的时候使用list。
你将会接收所有的值作为python list
from typing import List
from fastapi import FastAPI, Header
app = FastAPI()
@app.get("/items/")
async def read_items(x_token: List[str] = Header(None)):
return {"X-Token values": x_token}
本文深入探讨了FastAPI框架中头部参数的使用方法,包括如何读取和处理HTTP请求头,如User-Agent和X-Token。文章讲解了如何定义可选和必填的头部参数,以及如何处理重复的头部值。
521

被折叠的 条评论
为什么被折叠?



