参数response_class也会用来定义响应的「媒体类型」。 在这个例子中,HTTP 头的Content-Type会被设置成application/json。 并且在 OpenAPI 文档中也会这样记录。 小贴士 ORJSONResponse目前只在 FastAPI 中可用,而在 Starlette 中不可用。 HTML 响应¶ 使用HTMLResponse来从FastAPI中直接返回一个 HTML 响应。
fromfastapiimportFastAPIfromfastapi.responsesimportRedirectResponse app=FastAPI() @app.get("/redirect")defredirect_example():returnRedirectResponse(url="/json") 10.XML 格式 使用Response返回 XML 格式数据。 fromfastapiimportFastAPI, Response app=FastAPI() @app.get("/xml", response_class=Response)defge...
添加response_class 和 return Response 综合使用 上面的栗子讲了直接 return Response 的缺点,那么可以结合使用 response_class 来避开问题 代码语言:javascript 复制 #1、声明 response_class @app.get("/items2/",response_class=HTMLResponse)asyncdefread_items():html_content="""SomeHTMLinhereLook ma!HTML!""...
添加response_class 和 return Response 综合使用 上面的栗子讲了直接 return Response 的缺点,那么可以结合使用 response_class 来避开问题 # 1、声明 response_class@app.get("/items2/", response_class=HTMLResponse)asyncdefread_items():html_content ="""Some HTML in hereLook ma! HTML!"""# 2、仍然 ...
上面的两个栗子是通过在路径操作装饰器的 response_class 来声明 Response @app.get("/items/", response_class=HTMLResponse) 下面的栗子将会讲解在路径操作函数中直接 return Response 实际代码 from fastapi import FastAPI from fastapi.responses import HTMLResponse ...
如果在路径操作函数的配置中指定了response_class,甚至可以直接返回文件名: fromfastapiimportFastAPIfromfastapi.responsesimportFileResponsesome_file_path="large-video-file.mp4"app=FastAPI()@app.get("/",response_class=FileResponse)asyncdefmain():returnsome_file_path ...
app = FastAPI(default_response_class=MongoResponse)@app.get("/")async def getDoc(): foo = client.get_database('foo') result = await foo.bar.find_one({'author': 'fool'}) return result当我查看下面的堆栈跟踪时,它似乎仍在使用正常的默认响应,即json response。 查看完整描述...
response_class 可以在路径操作装饰器上声明 response_class=Response ,然后最终返回的响应数据的类型就是声明的 Response 实际代码 代码语言:javascript 复制 from fastapiimportFastAPI from fastapi.responsesimportORJSONResponse app=FastAPI()# 声明返回的 Response 类型 ...
@app.get("/", response_class=HTMLResponse) def home(request: Request): return templates.TemplateResponse("index.html", {"request": request}) 对于FastAPI,你需要明确地定义 "模板 "文件夹。然后对于每个响应,需要提供请求上下文。 4.5. 静态文件 ...
FastAPI 版本的“Hello World”如下。因为默认返回类型为 JSON,所以需要修改 response_class 到 PlainTextResponse 来返回字符串。 async 字段会让异步代码更简单,虽然不是必需,但除非你的代码不支持异步,否则我建议你最好加上。 随机数(Flask) 在Flask 服务器上返回随机生成数字 API 的代码如下。