当前位置: 首页 > news >正文

科协网站建设的建议网站后台关键词

科协网站建设的建议,网站后台关键词,做图片网站 服务器,弋阳县建设工程网站上篇文章我们学习了Django框架——配置文件和视图函数,这篇文章我们学习Django框架——请求与响应。 客户端和服务端的请求与响应过程:客户端访问某个网站并发出URL请求,服务器接受到请求后,根据请求内容来返回响应,如…

上篇文章我们学习了Django框架——配置文件和视图函数,这篇文章我们学习Django框架——请求与响应。

客户端和服务端的请求与响应过程:客户端访问某个网站并发出URL请求,服务器接受到请求后,根据请求内容来返回响应,如下图所示:

请求对象

在视图函数中,接收了request参数,通过该参数获取到URL路径,请求方式,请求参数,会话,上传文件信息等等,这里我们主要讲解获取请求参数,会话、文件信息会有单独的文章讲解,获取GET请求和POST请求参数一样,这里讲解获取GET请求参数,示例代码如下:

### views.py文件
from django.http import HttpResponse
def Get_Request(request):print(request.GET)      # 获取GET请求的参数return HttpResponse('OK')### urls.py文件
from Product.views import *
from django.urls import path
urlpatterns = [path('admin/', admin.site.urls),path('Get_Request/',Get_Request)
]

启动程序并访问http://127.0.0.1:5000/Get_Request/和http://127.0.0.1:5000/Get_Request?name=lisi,后端打印结果为:

<QueryDict: {}>
<QueryDict: {'name': ['lisi']}>

GET方法返回的是QueryDict类字典对象,获取QueryDict类字典对象里面数据的方法如下:

print(request.GET.get('name',default='张三'))  # 方法一
print(request.GET['name'])   # 方法二

在方法一中,当get获取的name不存在时,返回default设置的默认值(张三),这里我们建立使用方法一,因为在方法二中,当name不存在时,程序会报错。

访问http://127.0.0.1:5000/Get_Request?name=lisi&name=zhangsan,后端打印结果为:

<QueryDict: {'name': ['lisi', 'zhangsan']}>
zhangsan
zhangsan

当请求出现了两个name参数时,get只会返回最后一个name,当请求参数有几个相同的键时,可以通过getlist方法获取name的所有数据并返回为列表,示例代码如下:

print(request.GET.getlist('name')) 

后端打印结果为:

['lisi', 'zhangsan']

获取请求方式、URL路径、cookie、session、上传文件信息,示例代码如下:

print(request.method)       # 获取请求方式
print(request.path)     # url路径
print(request.get_full_path())      # url完整路径
print(request.COOKIES)      # COOKIES会话技术
print(request.session)      # session会话技术
print(request.FILES)        # 上传文件,前端上传的文件对象

访问http://127.0.0.1:5000/Get_Request/?name=lisi,后端打印结果如下:

GET
/Get_Request/
/Get_Request/?name=lisi
{'csrftoken': 'j86YmXNrJzEqAmtuBwfKV2KnoxlCX6JQ'}
<django.contrib.sessions.backends.db.SessionStore object at 0x00000243ACF3E260>
<MultiValueDict: {}>

响应对象

视图函数的响应主要有四种类型,分别为返回字符串(HttpResponse),返回模版(render),重定向(redirect或HttpResponseRedirect)和返回JSON(JsonResponse)。

HttpResponse

返回字符串主要使用HttpResponse方法,示例代码如下:

## views.py文件
from django.http import HttpResponse
def return_HttpResponse(request)return HttpResponse('return_HttpResponse')## urls.py文件
from django.contrib import admin
from django.urls import path
from Product.views import *urlpatterns = [path('admin/', admin.site.urls),path('return_HttpResponse/',return_HttpResponse),
]

访问http://127.0.0.1:5000/return_HttpResponse,浏览器显示return_HttpResponse。返回字符串简单了解一下就行,在开发中很少用到。

render

返回模版主要使用render方法,在使用render方法返回模版时,可以根据需求,将数据传递给模版,示例代码如下:

## views.py文件
from django.shortcuts import render
def return_render(request)content='你好'return render(request,'Hello World.html',{ 'content':content })## urls.py文件
from django.contrib import admin
from django.urls import path
from Product.views import *urlpatterns = [path('admin/', admin.site.urls),path('return_render/',return_render),
]

在Product文件夹创建templates文件夹并创建Hello World.html文件,该文件内容如下:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body><h1>{{ content }}</h1>
</body>
</html>

访问http://127.0.0.1:5000/return_render,浏览器显示你好。返回模版主要应用在前后端不分离的情况。

redirect或HttpResponseRedirect

重定向主要使用redirect或HttpResponseRedirect,两者没多大区别,示例代码如下:

## views.py文件
from django.shortcuts import redirect
def return_redirect(request)return redirect('/return_HttpResponse/')  # return HttpResponseRedirect('/return_HttpResponse/')## urls.py文件
from django.contrib import admin
from django.urls import path
from Product.views import *urlpatterns = [path('admin/', admin.site.urls),path('return_HttpResponse/',return_HttpResponse),path('return_redirect/',return_redirect),
]

访问http://127.0.0.1:5000/return_redirect,就会重定向return_HttpResponse/路由中,浏览器显示return_HttpResponse路由的内容(return_HttpResponse)。

注意:在重定向的URL路径中,前后都需要写斜杠。

JsonResponse

返回JSON类型数据,主要用JsonResponse方法,示例代码如下:

## views.py文件
from django.http import JsonResponse
def return_JsonResponse(request)return JsonResponse({'data':'JsonResponse'})  ## urls.py文件
from django.contrib import admin
from django.urls import path
from Product.views import *urlpatterns = [path('admin/', admin.site.urls),path('return_JsonResponse/',return_JsonResponse),
]

访问http://127.0.0.1:5000/return_JsonResponse/,浏览器显示{"data": "JsonResponse"},返回JSON主要用于前后端分离的情况。

好了,Django框架——请求与响应就学习到这里,下篇文章我们学习Django框架——路由。

公众号:白巧克力LIN

该公众号发布Python、数据库、Linux、Flask、Django、自动化测试、Git、算法、前端、服务器等相关文章!

- END -


文章转载自:

http://4r8n8s59.dbfp.cn
http://yXh92s5e.dbfp.cn
http://ZIq0RmI8.dbfp.cn
http://JDBLk0rL.dbfp.cn
http://rG5SLF5L.dbfp.cn
http://HY4c2V8i.dbfp.cn
http://xRlcU2bD.dbfp.cn
http://ibiS6BoW.dbfp.cn
http://QxymAcmO.dbfp.cn
http://N6Ov49sw.dbfp.cn
http://1JujSoHG.dbfp.cn
http://LhdD2N1R.dbfp.cn
http://xSLPMlCi.dbfp.cn
http://SHxcR9In.dbfp.cn
http://FJSZar9j.dbfp.cn
http://79dA1v3y.dbfp.cn
http://LvgeUpkk.dbfp.cn
http://0BSp26TT.dbfp.cn
http://AwiftIIS.dbfp.cn
http://K41FdOjO.dbfp.cn
http://uOW7z1Ss.dbfp.cn
http://adszZYQw.dbfp.cn
http://CC4jKF6T.dbfp.cn
http://reZ69AaW.dbfp.cn
http://Hi7Bv5jU.dbfp.cn
http://JPza35sB.dbfp.cn
http://VlValJCv.dbfp.cn
http://wHWi5XrM.dbfp.cn
http://4W4kcWB9.dbfp.cn
http://YaxND648.dbfp.cn
http://www.cdong.cn/news/156/

相关文章:

  • 如何做网站的推广教程岳阳关键词优化
  • 建设部监理网站官网编程如何自学
  • 个人网站备案出现公司名字怎么办为什么运行wordpress
  • 网站怎么进入网络营销的主要工具有哪些
  • 高校门户网站建设方案浙江省建设科技推广中心网站
  • 网站内容建设和运营工作内容网站建设 找 中企动力
  • 电商学院建设设计网站wordpress 图片等比例缩放
  • 酒泉网站建设有哪些用别人的公司名字做网站
  • 湛江网站建设服务推广软件赚钱
  • 廊坊高端网站制作群晖 wordpress 怎么映射到外网
  • 做展板好的网站电商平台总体设计方案
  • 无锡市住房和城乡建设部网站wordpress支付宝支付宝
  • 做变形记图网站网站开发刷新图片
  • 怎么查网站找谁做的女生适合前端还是后端
  • 徐州微网站开发建设一个网站可以做什么
  • 专业做网站排名多少钱中国上市公司名单大全
  • 宁波网站建设zj95百度网盘网站入口
  • 15年做哪些网站致富网站 手机兼容
  • 资讯平台网站模板wordpress图片轮播代码
  • 网站建设相关费用广安发展建设集团有限公司门户网站
  • 有什么做旅游攻略的网站我爱建站免费空间
  • 泰安市网站建设外贸网站 源码
  • 北京个人网站公司seo优化搜索引擎网站优化推广网络关键词优化-乐之家网络科技
  • 烟台网站开发技术网络培训的好处
  • 企业网站报告册设计模板网站建设需求有哪些
  • 做网站的具体步骤设计机构
  • 汽车门户网站开发有做机械工装的网站吗
  • 如何用visual studio做网站服装网页设计图片
  • 个人什么取消网站备案茶叶建设网站市场分析
  • 哪些网站可以免费做推广呢首次建设网站流程