- FastAPI 教程
- FastAPI - 首页
- FastAPI - 简介
- FastAPI - Hello World
- FastAPI - OpenAPI
- FastAPI - Uvicorn
- FastAPI - 类型提示
- FastAPI - IDE 支持
- FastAPI - REST 架构
- FastAPI - 路径参数
- FastAPI - 查询参数
- FastAPI - 参数验证
- FastAPI - Pydantic
- FastAPI - 请求体
- FastAPI - 模板
- FastAPI - 静态文件
- FastAPI - HTML 表单模板
- FastAPI - 访问表单数据
- FastAPI - 上传文件
- FastAPI - Cookie 参数
- FastAPI - 头部参数
- FastAPI - 响应模型
- FastAPI - 嵌套模型
- FastAPI - 依赖项
- FastAPI - CORS
- FastAPI - CRUD 操作
- FastAPI - SQL 数据库
- FastAPI - 使用 MongoDB
- FastAPI - 使用 GraphQL
- FastAPI - Websockets
- FastAPI - FastAPI 事件处理器
- FastAPI - 挂载子应用
- FastAPI - 中间件
- FastAPI - 挂载 Flask 应用
- FastAPI - 部署
- FastAPI 有用资源
- FastAPI - 快速指南
- FastAPI - 有用资源
- FastAPI - 讨论
FastAPI - 头部参数
为了读取作为客户端请求一部分的HTTP 头部的值,请从 FastAPI 库导入 Header 对象,并在操作函数定义中声明一个 Header 类型的参数。参数名称应与转换为驼峰命名法的 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 文档所示,检索到的头部显示为响应体。
您可以将自定义和预定义的头部推送到响应对象中。操作函数应具有Response类型的参数。为了设置自定义头部,其名称应以“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)
新添加的头部将出现在文档的响应头部部分。
广告