Python全系列 教程
3567个小节阅读:5929.9k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
REST framework引入了2个新的对象:Request和Response
rest_framework.request.Request
该对象扩展了常规的HttpRequest ,增加了对REST框架灵活的请求解析和请求认证的支持
官网:https://www.django-rest-framework.org/api-guide/requests/#requests
主要属性:
data
这个属性类似django的request的POST和FILES属性:
django的request.POST:只能获取POST请求的form表单数据
rest_framework的request.data:
query_params
就是标准的request.GET属性,不过从命名角度来说,更加合理,因为不是只有GET请求才有GET查询参数
rest_framework.response.Response
网站:https://www.django-rest-framework.org/api-guide/responses/#responses
该类是Django的 SimpleTemplateResponse 的子类,使用python原始对象进行数据初始化,然后,REST框架使用标准HTTP内容协商来确定它应如何呈现最终的响应内容
Response(data, status=None, template_name=None, headers=None, content_type=None)
data
:响应的序列化数据,如果是复杂对象,如模型实例,需要在传入之前序列化为原始数据类型(如dict等)status
:响应的状态代码,默认为200template_name
:HTMLRenderer
选择时使用的模板名称headers
:要在响应中使用的HTTP标头的字典content_type
:响应的内容类型。通常,这将由内容协商确定的渲染器自动设置,但在某些情况下您可能需要明确指定内容类型data:响应的未呈现的序列化数据
status_code:响应状态码,建议使用HTTP_200_OK 这样的常量,而不是 200 这样的数字,常量给每个状态代码提供更明确的标识符
更详细的见:https://www.django-rest-framework.org/api-guide/status-codes/
content:渲染后的响应内容,调用此属性前需要调用.render()方法渲染
template_name:指定的模板名
accepted_renderer:将用于呈现响应的呈现器实例,在视图返回响应之前由APIView
或@api_view
自动设置
accepted_media_type:内容协商阶段选择的媒体类型,在视图返回响应之前由APIView
或@api_view
自动设置
renderer_context:需要渲染的上下文字典对象,在视图返回响应之前由APIView
或@api_view
自动设置
实时学习反馈
1. _____对象扩展了常规的HttpRequest ,增加了对REST框架灵活的请求解析和请求认证的支持
A rest_framework.request.request
B rest_framework.request.Response
C rest_framework.request.Request
D rest_framework.response.Request
答案
1=>C