组建响应
Starlette中的响应是通过Response
基类来提供的,但针对不同的响应还是提供了快捷的组建类。实例化一个Response
类实例一般需要通过参数提供以下四种内容。
content
,响应体内容。status_code
,HTTP响应码。headers
,响应头。media_type
,响应的媒体类型。background
,响应输出后要执行的后台任务。
Response实例可以设置客户端的Cookie,这主要通过set_cookie()
和delete_cookie()
两个方法实现。
常用的响应类主要有以下这些。
HTMLResponse
,HTML文本响应类。PlainTextResponse
,纯文本响应类。TemplateResponse
,通过模板渲染引擎的动态模板响应类。JSONResponse
,返回application/json
的数据响应类。UJSONResponse
,使用ujson
进行数据JSON串行化的响应类。RedirectResponse
,产生302转向的响应类。StreamingResponse
,产生流式数据的响应类。FileResponse
,产生文件下载的响应类。