rest_framework中的request和response

本文详细介绍了RESTful API中请求与响应的工作原理。针对请求部分,文章解释了如何根据content_type自动解析请求数据,并将其保存到request对象中;对于响应部分,则介绍了如何根据前端请求的Accept类型自动转换响应数据格式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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会根据前端所需

类型数据来设置改参数. 

 1常用属性:

1>data

传给response对象的序列化后,但尚未render处理的数据

  2>status_code

状态码的数字

3>content

经过render处理后的响应数据

 

转载于:https://www.cnblogs.com/zxt-cn/p/9242464.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值