
本文将介绍如何在 FastAPI 应用程序中返回纯文本响应,而不是默认的 JSON 格式。通过使用 `PlainTextResponse`,你可以避免字符串被自动格式化为 JSON,从而直接返回原始文本内容。本文将提供详细的代码示例和步骤,帮助你轻松实现纯文本响应的返回。
FastAPI 默认会将从 endpoint 返回的字符串转换为 JSON 响应。这意味着字符串中的双引号会被转义(加上反斜杠 \),并且整个字符串会被包裹在双引号中。 如果你需要返回未经格式化的纯文本,比如直接返回 Hello "World"! 而不是 "Hello \"World\"!",则需要使用 PlainTextResponse。
使用 PlainTextResponse 返回纯文本
PlainTextResponse 是 FastAPI 提供的响应类,用于返回纯文本内容。要使用它,你需要从 fastapi.responses 导入 PlainTextResponse,并在你的 endpoint 中指定 response_class=PlainTextResponse。
以下是一个示例:
import uvicorn
from fastapi import FastAPI
from fastapi.responses import PlainTextResponse
app = FastAPI()
@app.get(
    "/",
    response_class=PlainTextResponse,
)
def read_root():
    return 'Hello "World"!'
if __name__ == "__main__":
    uvicorn.run(app, host="0.0.0.0", port=8000)代码解释:
运行结果
运行上述代码后,你可以使用浏览器或 curl 等工具访问 http://127.0.0.1:8000/。 你会看到返回的文本是 Hello "World"!,而不会被 JSON 格式化。
注意事项
确保你已经安装了 FastAPI 和 uvicorn:
pip install fastapi uvicorn
PlainTextResponse 适用于返回简单的文本内容。 如果你需要返回更复杂的数据结构,或者需要支持不同的内容类型,则应该使用其他响应类,例如 JSONResponse 或 HTMLResponse。
response_class 可以在不同的 endpoint 中灵活使用,根据需要选择合适的响应类型。
总结
通过使用 PlainTextResponse,你可以轻松地在 FastAPI 应用程序中返回纯文本响应。 这在需要返回未经格式化的文本内容时非常有用。 记住,根据你的需求选择合适的响应类型,以确保你的 API 能够正确地处理和返回数据。
以上就是返回 FastAPI 中的纯文本的详细内容,更多请关注php中文网其它相关文章!
 
                        
                        每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
 
                Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号