12 请求与响应

技术12 请求与响应 12 请求与响应1.请求Request# 请求对象
# from rest_framework.request import Requestdef __init__(self, r

12项请求和回应

1.请求Request

#请求对象

#来自rest_framework。请求导入请求

def __init__(自身,请求,解析器=无,授权码=无,

协商者=无,解析器_上下文=无):

#将请求封装两次,将本机请求作为drf请求对象的_request属性。

自我。_请求=请求

def __getattr__(自身,项目):

返回getattr(self。_请求,项目)

#请求对象。data:前端post以三种编码方式传入的数据可以取出。

#请求对象.query_params与请求相同。Django标准的GET,但名称更改为更正确。

#属性:

request.data

request.query_params

请求。_请求原始请求

Request.method -也就是说,使用原始请求的方法是通过重写__getattr__ magic方法实现的。

#默认情况下,post提交数据,可以通过三种方式处理(表单数据、urlencoded、json)。

#我们只允许接口接收json格式,其他格式不支持。

#方法1:配置文件中的全局配置

REST _ FRAMEWORK=

#默认情况下可以解析的编码方法

DEFAULT _ PARSER _ CLASSES ' :(

rest _ framework . parser . jsonparser ',# JSON的

# ' rest _ framework . parser . form parser ',# urlencode的

# ' rest _ framework . parser . multipart parser ' # form-data的

)

}

#模式2:本地配置:(视图类)

类PublishView(APIView):

parser _ class=[FormParser,] #具有更高的优先级。

# Priority:首先使用视图类自己的,然后使用配置文件——DRF的默认配置。

2.响应 Response

#来自rest_framework.response导入响应

def __init__(自身,数据=无,状态=无,

模板名=无,标题=无,

异常=假,内容类型=无):

#data:要返回的数据,字典

#status:返回的状态代码,默认为200。

-from rest _ framework importstatus在此路径下,它将所有使用的状态代码定义为常数。

#template_name渲染模板(自定义模板)的名称,不需要知道。

# headers:响应头是一个字典,它可以在响应头中放入一些东西。

#content_type:响应的编码格式,application/json和text/html;

#浏览器响应为浏览器格式,postman响应为json格式,通过配置实现(默认配置)

#邮递员和浏览器都返回json格式的数据。

# drf有一个默认的配置文件——“先看看项目的设置,如果找不到,就用默认的。”

# drf配置信息,首先从自己的类中找到它-在项目的设置中找到它-默认情况下找到它。

-:的本地使用对某个视图类有效。

-在视图类中编写以下内容

从rest_framework.renderers导入JSONRenderer

renderer _ class=[JSonrenderer,]

-全局使用:全局视图类,所有请求都是有效的。

-将以下内容添加到设置中。py

REST _ FRAMEWORK=

Default _ renderer _ class ' :(#默认响应呈现类

rest _ framework . renderers . JSON renderer ',# JSON renderer

rest _ framework . renderers . browsessleapirenderer ',# Browse API渲染器

)

}

#属性:

数据:返回到前端的数据,可以是字典、列表或字符串。

状态:响应状态代码,1x2x3x4x5xx

模板名称:否,替换模板

标头=无:响应标头

#默认情况下,你可以用浏览器看到页面,你可以用postman看到jon。

#只能显示json

#方法1:配置文件中的全局配置

REST _ FRAMEWORK=

#使用的渲染类

DEFAULT _ RENDERER _ CLASSES ' :(

rest _ framework . renderers . jsonrenderer ',

# ' rest _ framework . renderers . browssableapirenderer ',

)

}

#本地配置:(视图类)

类PublishView(APIView):

renderer _ class=[JSonrenderer,]

# Priority:首先使用视图类自己的,然后使用配置文件——DRF的默认配置。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/155872.html

(0)

相关推荐

  • 人有多少块肌肉,人最坚硬的肌肉是哪块啊`?

    技术人有多少块肌肉,人最坚硬的肌肉是哪块啊`?人体共约639块肌肉,我们生活中的一切动作,都是在神经系统的调控下,由肌肉的收缩和舒张带动骨人有多少块肌肉、关节运动而实现的。现在,摸摸你的身体,你觉得哪块肌肉最强壮?舌头、

    生活 2021年10月27日
  • 布局标签,结构化语义标签)

    技术布局标签,结构化语义标签) 布局标签(结构化语义标签)注意,关注的是语义,而不是样式的区别,下面的这些标签所展示出来的样式都是一样的,都是H5新增的一些标签,当我们遇到这些标签的时候就能够通过语义知

    礼包 2021年12月10日
  • 数据库内存共享实现原理是什么

    技术数据库内存共享实现原理是什么这篇文章主要讲解了“数据库内存共享实现原理是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“数据库内存共享实现原理是什么”吧!共享内存是

    攻略 2021年11月4日
  • Redis如何删除1.2亿指定前缀的key

    技术Redis如何删除1.2亿指定前缀的key这篇文章主要为大家展示了“Redis如何删除1.2亿指定前缀的key”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Redis如何

    攻略 2021年12月1日
  • Hibernate持久化类怎么用

    技术Hibernate持久化类怎么用这篇文章主要介绍了Hibernate持久化类怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Hibernate持久

    攻略 2021年12月1日
  • PHP中跳转与重定向的区别有哪些

    技术PHP中跳转与重定向的区别有哪些这篇文章主要讲解了“PHP中跳转与重定向的区别有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PHP中跳转与重定向的区别有哪些”吧

    攻略 2021年11月4日