python的django框架http请求_Django框架学习——Django(四)请求与响应

本文详细介绍了Django框架中处理HTTP请求的各种方式,包括从URL路径参数、查询字符串、请求体、请求头获取数据,并讲解了如何处理表单数据、JSON数据以及设置响应。此外,还提到了Django的HttpResponse及其子类,以及JsonResponse和redirect重定向的使用。

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

请求

回想一下,利用HTTP协议向服务器传参有几种途径?提取URL的特定部分,如/weather/beijing/2018,可以在服务器端的路由中用正则表达式截取;

查询字符串(query string),形如key1=value1&key2=value2;

请求体(body)中发送的数据,比如表单数据、json、xml;

在http报文的头(header)中。

1、URL路径参数

在定义路由URL时,可以使用正则表达式提取参数的方法从URL中获取请求参数,Django会将提取的参数直接传递到视图的传入参数中。未命名参数按定义顺序传递, 如url(r'^weather/([a-z]+)/(\d{4})/$', views.weather),

def weather(request, city, year):

print('city=%s' % city)

print('year=%s' % year)

return HttpResponse('OK')

命名参数按名字传递,如url(r'^weather/(?P[a-z]+)/(?P\d{4})/$', views.weather),

def weather(request, year, city):

print('city=%s' % city)

print('year=%s' % year)

return HttpResponse('OK')

2、Django中的QueryDict对象

定义在django.http.QueryDict

HttpRequest对象的属性GET、POST都是QueryDict类型的对象

与python字典不同,QueryDict类型的对象用来处理同一个键带有多个值的情况方法get():根据键获取值

如果一个键同时拥有多个值将获取最后一个值

如果键不存在则返回None值,可以设置默认值进行后续处理dict.get('键',默认值)

可简写为

dict['键

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值