django 使用 request 获取浏览器发送的参数示例代码


Posted in Python onJune 11, 2018

获取数据(四种方式)

1. url: 需要正则去匹配

    url(r'^index/(num)/$',view.index)

    匹配到的参数会自动传入对应的视图函数

    也可以给匹配到的参数起名字?P<num>

    url(r'^index/(?P<num1>\d*)(?P<num2>\w*)$',)

    使用url传参的时候,要么都使用位置参数,要么都使用给参数起名字的方式

    也可以通过request.path获取到url然后获取相应的参数.

    如访问127.0.0.1:8000/index/

    则request.path = '/index/'

2. ?号后面的键值对(又叫查询字符串):

    如

index/?num=55&num2=66&num=77
 request.GET.get('num') # 获取的是77
 request.GET.getlist('num') # 获取num的所有值
 request.GET.get('num2')

3. 请求体

request.POST.get() 获取表单数据
 request.body 获取非表单数据,如json
 request.body返回的是一个byte的对象
  b'{"key":"value"}',可以通过下面方式获取值
 data = eval(request.body.decode()).get('key')
 data1 = json.loads(request.body).get('key')
 #如果request.body没有数据上面两条语句都会报错

4. 报文头

    request.META 获取请求头信息,
    django会自动把获取到的请求头全部转化为大写,并在前面加上HTTP,如:
    请求头: User-Agent:***** 
    获取方式: request.META.get('HTTP_USER_AGENT')

•代码示例(获取请求数据)

# 获取正则匹配到的数据,num1未位置参数,num2为命名参数,
def index(request,num2=None, num1=None):
 print(num2)
 # 构造响应数据
 reNT')
 sp = HttpResponse('hello world')
 # 获取请求头
 header = request.META.get('HTTP_USER_AGE)
 # 获取地址
 path = request.path
 # 获取 ? 后面的数据(获取查询字符串数据)
 para = request.GET
 # 获取json数据
 json_data = request.body
 data = eval(request.body.decode()).get('asd')
 data1 = json.loads(request.body).get('asd')
 # 获取表单数据
 form_data = request.POST
 # 获取请求方法
 method = request.method
 # 获取文件
 file_obj = request.FILES.get('image')
 return resp

总结

以上所述是小编给大家介绍的django 使用 request 获取浏览器发送的参数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
python网络编程学习笔记(六):Web客户端访问
Jun 09 Python
python类的继承实例详解
Mar 30 Python
python之文件读取一行一行的方法
Jul 12 Python
python按时间排序目录下的文件实现方法
Oct 17 Python
利用pyuic5将ui文件转换为py文件的方法
Jun 19 Python
在SQLite-Python中实现返回、查询中文字段的方法
Jul 17 Python
python 爬取疫情数据的源码
Feb 09 Python
Python文件操作基础流程解析
Mar 19 Python
Python pandas如何向excel添加数据
May 22 Python
编写python代码实现简单抽奖器
Oct 20 Python
python中lower函数实现方法及用法讲解
Dec 23 Python
Python3+PyCharm+Django+Django REST framework配置与简单开发教程
Feb 16 Python
python操作excel的方法(xlsxwriter包的使用)
Jun 11 #Python
Python 爬取携程所有机票的实例代码
Jun 11 #Python
完美解决安装完tensorflow后pip无法使用的问题
Jun 11 #Python
Anaconda 离线安装 python 包的操作方法
Jun 11 #Python
使用anaconda的pip安装第三方python包的操作步骤
Jun 11 #Python
python获取代码运行时间的实例代码
Jun 11 #Python
解决Ubuntu pip 安装 mysql-python包出错的问题
Jun 11 #Python
You might like
php&amp;java(一)
2006/10/09 PHP
PHP自动选择 连接本地还是远程数据库
2010/12/02 PHP
php数据结构与算法(PHP描述) 查找与二分法查找
2012/06/21 PHP
PHP ? EasyUI DataGrid 资料取的方式介绍
2012/11/07 PHP
PHP清除数组中所有字符串两端空格的方法
2014/10/20 PHP
php中smarty区域循环的方法
2015/06/11 PHP
linux下为php添加iconv模块的方法
2016/02/28 PHP
如何通过View::first使用Laravel Blade的动态模板详解
2017/09/21 PHP
PDO::beginTransaction讲解
2019/01/27 PHP
thinkPHP框架RBAC实现原理分析
2019/02/01 PHP
jQuery(1.3.2) 7行代码搞定跟随屏幕滚动的层
2009/05/21 Javascript
javascript css styleFloat和cssFloat
2010/03/15 Javascript
js 对小数加法精度处理示例说明
2013/12/27 Javascript
基于JavaScript实现弹出框效果
2016/02/19 Javascript
js跨域资源共享 基础篇
2016/07/02 Javascript
easyui tree带checkbox实现单选的简单实例
2016/11/07 Javascript
jquery中绑定事件的异同
2017/02/28 Javascript
为什么使用koa2搭建微信第三方公众平台的原因
2018/05/16 Javascript
angular6根据environments配置文件更改开发所需要的环境的方法
2019/03/06 Javascript
jquery操作select常见方法大全【7种情况】
2019/05/28 jQuery
vue 实现cli3.0中使用proxy进行代理转发
2019/10/30 Javascript
Vue中错误图片的处理的实现代码
2019/11/07 Javascript
Vue优化:常见会导致内存泄漏问题及优化详解
2020/08/04 Javascript
[03:11]2014DOTA2国际邀请赛-VG掉入败者组 独家专访357
2014/07/19 DOTA
Python3控制路由器——使用requests重启极路由.py
2016/05/11 Python
局域网内python socket实现windows与linux间的消息传送
2019/04/19 Python
如何利用pygame实现简单的五子棋游戏
2019/12/29 Python
pytorch GAN生成对抗网络实例
2020/01/10 Python
对Pytorch 中的contiguous理解说明
2021/03/03 Python
CSS3中的transform属性进行2D和3D变换的基本用法
2016/05/12 HTML / CSS
美国知名的网上鞋类及相关服装零售商:Shoes.com
2017/05/06 全球购物
企业内部培训方案
2014/02/04 职场文书
反对四风自我剖析材料
2014/10/07 职场文书
商务英语求职信范文
2015/03/19 职场文书
幼师必备:幼儿园期末教师评语50条
2019/11/01 职场文书
Go结合Gin导出Mysql数据到Excel表格
2022/08/05 Golang