starlette.responses.PlainTextResponse()在Python中的应用和实例
发布时间:2024-01-07 13:11:08
在Python中,starlette.responses.PlainTextResponse()是使用Starlette框架编写的应用程序中常用的响应类之一。它用于返回纯文本响应给HTTP请求。
下面是一个示例,展示了如何使用PlainTextResponse()类在Starlette应用程序中返回纯文本响应:
from starlette.applications import Starlette
from starlette.responses import PlainTextResponse
app = Starlette()
@app.route("/")
async def homepage(request):
return PlainTextResponse("Hello, World!") # 返回一个纯文本响应
if __name__ == "__main__":
import uvicorn
uvicorn.run(app, host="0.0.0.0", port=8000)
在上面的示例中,我们创建了一个Starlette应用程序,并定义一个路由/,当接收到该路由的HTTP请求时,我们使用PlainTextResponse类返回"Hello, World!"纯文本响应。
另外,PlainTextResponse()类还支持设置其他HTTP响应头和状态码。下面的示例展示了如何设置自定义的响应头和状态码:
from starlette.applications import Starlette
from starlette.responses import PlainTextResponse
app = Starlette()
@app.route("/")
async def homepage(request):
headers = {"X-Custom-Header": "Custom Header Value"} # 自定义响应头
return PlainTextResponse("Hello, World!", headers=headers, status_code=201) # 设置自定义响应头和状态码
if __name__ == "__main__":
import uvicorn
uvicorn.run(app, host="0.0.0.0", port=8000)
在上面的示例中,我们通过headers参数将自定义响应头添加到响应中,并通过status_code参数设置状态码为201。
另外,我们还可以在PlainTextResponse()类中指定其他参数,例如content_type参数用于指定响应内容的MIME类型、background参数用于将请求放入后台处理等。
总结来说,starlette.responses.PlainTextResponse()用于在星光框架中返回纯文本响应。它可以设置自定义响应头和状态码,并支持其他参数的设置。通过使用starlette.responses.PlainTextResponse()可以轻松地在Starlette应用程序中返回纯文本响应给HTTP请求。
