全国咨询/投诉热线:400-618-9090

首页技术文章正文

Django请求和响应设置图文教程

更新时间:2019-12-12 来源:黑马程序员 浏览量:

1、快速实现

①定义路由 urls.py

②定义视图函数 views.py

·······

③模型数据调用 创建表

④包含模板 加载模板(html····)
1.1、路由定义

1576142541193_Django的请求和响应01.jpg

1576142551623_Django的请求和响应02.jpg

1576142560506_Django的请求和响应03.jpg

1.2、编写视图

1576142587801_Django的请求和响应04.jpg

1576142603616_Django的请求和响应05.jpg


1.3、浏览器访问

1576142613435_Django的请求和响应06.jpg

到这里,就完成了一个页面请求。


2、请求

https://docs.djangoproject.com/zh-hans/2.1/ref/request-response/

客户端请求服务器端携带的信息

属性:

HttpRequest.scheme:请求的方式,即http或者是https

HttpRequest.body:请求的主体,返回的是一个字符串

HttpRequest.path:请求的路径,这里的路径是指相对路径,也就是说一个登陆后台页面的请求:http://127.0.0.1:8000/admin 的路径是 /admin 

HttpRequest.method:请求方式 POST/GET

HttpRequest.encoding:请求提交的数据的编码方式

HttpRequest.GET:获取get方式表单中或url提交的数据

HttpRequest.POST:获取post方式表单中或url提交的数据

HttpRequest.META:获取的是一个标准的python字典。它包含了所有的HTTP请求信息

方法:

HttpRequest.get_host():请求的地址

HttpRequest.get_port():请求的端口

HttpRequest.get_full_path():请求的完整路径,包括get参数

1576142624013_Django的请求和响应07.jpg

1576142635555_Django的请求和响应08.jpg

接收GET方式传值

1576142647055_Django的请求和响应09.jpg

1576142658559_Django的请求和响应10.jpg


3、服务器端返回给客户端的信息


属性:

HttpResponse.content:响应内容

HttpResponse.status_code:响应状态码

HttpResponse.content_type:响应类型(默认是:text/html )

1576142669281_Django的请求和响应11.jpg

1576142680860_Django的请求和响应12.jpg

4、GET请求传参和接收

Get请求是明文传输,信息附加在url上面。

在HttpRequest对象中,GET属性是django.http.QueryDict 的实例,它是一个自定义的类似字典的类,用来处理同一个键带有多个值。这个类的需求来自某些HTML 表单元素传递多个值给同一个键。

request.GET的QueryDict 在一个正常的请求/响应循环中是不可变的。

例:接收URL通过GET方式传输过来的参数,并打印到页面上

①接收到参数

②通过response返回参数

·定义路由

1576142739509_Django的请求和响应13.jpg


·定义视图函数

1576142754346_Django的请求和响应14.jpg

1576142806615_Django的请求和响应15.jpg


③进行参数组合返回给页面显示

1576142817068_Django的请求和响应16.jpg


5、POST请求传参和接收

POST相对于Get请求是安全的,所有信息附加在表单中。

在HttpRequest对象中,POST属性是django.http.QueryDict 的实例,它是一个自定义的类似字典的类,用来处理同一个键带有多个值。这个类的需求来自某些HTML 表单元素传递多个值给同一个键。

request.POST的QueryDict 在一个正常的请求/响应循环中是不可变的。

例:通过postman(接口调试工具)模拟发送POST请求,传输参数并把参数打印到页面

①postman发送数据

1576142833431_Django的请求和响应17.jpg

Tip:403 CSRF 禁止访问

解决方案一: 禁止关闭 CSRF 限制

1576142846304_Django的请求和响应18.jpg

②返回数据信息

1576142863207_Django的请求和响应19.jpg

1576142873753_Django的请求和响应20.jpg


6、QueryDict对象

QueryDict.get(key, default=None)

QueryDict.getlist(key, default=None)

1576142885984_Django的请求和响应21.jpg

QueryDict.items()

QueryDict.lists()

1576142902013_Django的请求和响应22.jpg


猜你喜欢:
Django函数视图和模板介绍
如何配置Django+HTTPS开发环境?
Django框架环境安装教程
Django框架中路由详细介绍
Django数据库连接的问题
django文件上传

javaee

python

web

ui

cloud

test

c

netmarket

pm

Linux

movies

robot

http://www.itcast.cn/subject/uizly/index.shtml?seozxuids

14天免费试学

基础班入门课程限时免费

申请试学名额

15天免费试学

基础班入门课程限时免费

申请试学名额

15天免费试学

基础班入门课程限时免费

申请试学名额

15天免费试学

基础班入门课程限时免费

申请试学名额

20天免费试学

基础班入门课程限时免费

申请试学名额

8天免费试学

基础班入门课程限时免费

申请试学名额

20天免费试学

基础班入门课程限时免费

申请试学名额

5天免费试学

基础班入门课程限时免费

申请试学名额

0天免费试学

基础班入门课程限时免费

申请试学名额

12天免费试学

基础班入门课程限时免费

申请试学名额

5天免费试学

基础班入门课程限时免费

申请试学名额

5天免费试学

基础班入门课程限时免费

申请试学名额

10天免费试学

基础班入门课程限时免费

申请试学名额
在线咨询 我要报名