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 迭代器和iter()函数详解及实例
Mar 21 Python
python的unittest测试类代码实例
Dec 07 Python
Python 25行代码实现的RSA算法详解
Apr 10 Python
对命令行模式与python交互模式介绍
May 12 Python
Python切片操作去除字符串首尾的空格
Apr 22 Python
Python 硬币兑换问题
Jul 29 Python
PyCharm搭建Spark开发环境的实现步骤
Sep 05 Python
pytorch中nn.Conv1d的用法详解
Dec 31 Python
python使用Geany编辑器配置方法
Feb 21 Python
使用pandas库对csv文件进行筛选保存
May 25 Python
python中取整数的几种方法
Nov 07 Python
python周期任务调度工具Schedule使用详解
Nov 23 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 的 __FILE__ 常量
2007/01/15 PHP
Discuz 模板语句分析及知识技巧
2009/08/21 PHP
php中数字、字符与对象判断函数用法实例
2014/11/26 PHP
PHP中的类型提示(type hinting)功能介绍
2015/07/01 PHP
基于PHP实现用户注册登录功能
2016/10/14 PHP
IE8中动态创建script标签onload无效的解决方法
2014/12/22 Javascript
JavaScript中的原型prototype属性使用详解
2015/06/05 Javascript
正则表达式优化JSON字符串的技巧
2015/12/24 Javascript
JavaScript学习小结之使用canvas画“哆啦A梦”时钟
2016/07/24 Javascript
微信小程序开发教程-手势解锁实例
2017/01/06 Javascript
浅谈Vue.js
2017/03/02 Javascript
JS实现定时任务每隔N秒请求后台setInterval定时和ajax请求问题
2017/10/15 Javascript
js原生实现移动端手指滑动轮播图效果的示例
2018/01/02 Javascript
解决vue2中使用axios http请求出现的问题
2018/03/05 Javascript
关于vue-cli 3配置打包优化要点(推荐)
2019/04/22 Javascript
使用express来代理服务的方法
2019/06/21 Javascript
微信小程序 授权登录详解(附完整源码)
2019/08/23 Javascript
javascript设计模式 ? 状态模式原理与用法实例分析
2020/04/22 Javascript
JavaScript ES6 Class类实现原理详解
2020/05/08 Javascript
vue中watch的用法汇总
2020/12/28 Vue.js
[00:34]拔城逐梦,热血永恒!2020(秋)完美世界城市挑战赛报名开启
2020/10/09 DOTA
python操作日期和时间的方法
2014/03/11 Python
Python解决鸡兔同笼问题的方法
2014/12/20 Python
初步解析Python下的多进程编程
2015/04/28 Python
Python生成数字图片代码分享
2017/10/31 Python
IronPython连接MySQL的方法步骤
2019/12/27 Python
Mac PyCharm中的.gitignore 安装设置教程
2020/04/16 Python
HTML5 canvas画图并保存成图片的jcanvas插件
2014/01/17 HTML / CSS
外贸销售员求职的自我评价
2013/11/23 职场文书
行政人员工作职责
2013/12/05 职场文书
新颖的化妆品活动方案
2014/08/21 职场文书
会计试用期自我评价怎么写
2014/09/18 职场文书
场地使用证明模板
2014/10/25 职场文书
高中生思想道德自我评价
2015/03/09 职场文书
《山中访友》教学反思
2016/02/24 职场文书
导游词之铁岭象牙山
2019/12/06 职场文书