Request
在接收到请求后自动根据content_type指明的请求数据类型,将其解析为类字典对象保存到request对象当中.
常用属性:
1 .data
request.data类似于request.POST和request.FILES特性,
包含了解析之后的文件和非文件数据
包含了对POST.PUT.PATCH请求方式解析后的数据
利用了rest_framework的parsers解析器, 支持表单类型数据,json数据
2.query_params
与request.GET相同,只是更换了更正确的名称而已
Response
响应类, 提供了Render渲染器,用来根据请求头中的Accept(接收数据类型声明)来自动转换
响应数据到对应格式,如果前端请求中未进行accept声明,则会采用默认方式处理相应数据,可以
通过配置来修改默认相应格式.
REST_FRAMEWORK = { 'DEFAULT_RENDERER_CLASSES': ( # 默认响应渲染类 'rest_framework.renderers.JSONRenderer', # json渲染器 'rest_framework.renderers.BrowsableAPIRenderer', # 浏览API渲染器 ) }
构造方式:
Response(data,status=None,template_name=None,headers=None,content_Type=None)
参数说明:
data:为响应准备的序列化处理后的数据;
status:状态码,默认200
template_name: 模板名称 ,如果使用HTML Renderer时需指明
headers 用于存放响应头信息的字典
content_type 响应数据的Content_Type, 通常此参数无需传递,REST framework会根据前端所需
类型数据来设置改参数.
属性说明:
data:未经序列化的请求对象
status_code: HTTP response的状态码
content: 必须先渲染render()之后才能调用.content
template_name: 如果应用了,那么只接受HTMLRenderer或者自定义的template renderer 渲染之后的数据
accepted_renderer: 设置用于渲染请求数据的渲染器
accepted_media_type:指定的媒体类型
renderer_context: 附加的字典信息,APIView和 @api_view会自动在马上就要返回给客户端的时候才会被渲染