FastAPI header参数

FastAPI header参数

为了读取作为客户端请求一部分的 HTTP头的 值,从FastAPI库中导入Header对象,并在操作函数定义中声明一个Header类型的参数。参数的名称应该与用 camel_case 转换的HTTP头相匹配

在下面的例子中,要检索的是 “accept-language “头。由于Python不允许在标识符的名称中使用”-“(破折号),所以用”_”(下划线)代替。

from typing import Optional
from fastapi import FastAPI, Header
app = FastAPI()
@app.get("/headers/")
async def read_header(accept_language: Optional[str] = Header(None)):
   return {"Accept-Language": accept_language} 

正如下面的Swagger文档所示,检索到的标头被显示为响应体。

FastAPI - 头部参数

你可以在响应对象中推送自定义和预定义的头信息。 操作函数应该有一个 响应 类型的参数。为了设置一个自定义的头信息,它的名字应该以 X 为前缀 在下面的例子中,一个名为 “X-Web-Framework “的自定义头和一个预定义头 “Content-Language “被添加到操作函数的响应中。

from fastapi import FastAPI
from fastapi.responses import JSONResponse
app = FastAPI()
@app.get("/rspheader/")
def set_rsp_headers():
   content = {"message": "Hello World"}
   headers = {"X-Web-Framework": "FastAPI", "Content-Language": "en-US"}
   return JSONResponse(content=content, headers=headers)

新添加的标头将出现在文档的响应标头部分。

FastAPI - 头部参数

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程