创新互联FastAPI教程:FastAPI教程响应头

使用Response参数

你可以Response在你的路径操作函数中声明一个 type 的参数(就像你可以为 cookie 做的那样)。

十载的潜山网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。成都全网营销的优势是能够根据用户设备显示端的尺寸不同,自动调整潜山建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联从事“潜山网站设计”,“潜山网站推广”以来,每个客户项目都认真落实执行。

然后您可以在该时间响应对象中设置标头。

from fastapi import FastAPI, Response

app = FastAPI()


@app.get("/headers-and-object/")
def get_headers(response: Response):
    response.headers["X-Cat-Dog"] = "alone in the world"
    return {"message": "Hello World"}

然后您可以像往常一样返回您需要的任何对象(a dict、数据库模型等)。

如果您声明了 a response_model,它仍将用于过滤和转换您返回的对象。

FastAPI将使用该临时响应来提取标头(还有 cookie 和状态代码),并将它们放在包含您返回的值的最终响应中,由 any 过滤response_model。

您还可以Response在依赖项中声明参数,并在其中设置标头(和 cookie)。

Response直接返回一个

也可以在Response直接返回 a 时添加标题。

按照直接返回响应中的说明创建响应,并将标头作为附加参数传递:

from fastapi import FastAPI
from fastapi.responses import JSONResponse

app = FastAPI()


@app.get("/headers/")
def get_headers():
    content = {"message": "Hello World"}
    headers = {"X-Cat-Dog": "alone in the world", "Content-Language": "en-US"}
    return JSONResponse(content=content, headers=headers)

技术细节

您也可以使用from starlette.responses import Response或from starlette.responses import JSONResponse。

FastAPI提供相同starlette.responses的fastapi.responses,就像为你的方便,开发人员。但大多数可用的响应直接来自 Starlette。

由于Response可以经常用于设置标头和 cookie,FastAPI也在fastapi.Response.

自定义标题

请记住,可以使用“X-”前缀添加自定义专有标头。

但是,如果您希望浏览器中的客户端能够看到自定义标头,则需要使用Starlette 的 CORS 中记录的参数将它们添加到 CORS 配置中(在CORS(跨源资源共享)中了解更多信息) 文档。expose_headers

本文名称:创新互联FastAPI教程:FastAPI教程响应头
链接分享:http://www.mswzjz.cn/qtweb/news37/537487.html

攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能