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 相关文章推荐
python3.0 字典key排序
Dec 24 Python
Python下singleton模式的实现方法
Jul 16 Python
Python中使用hashlib模块处理算法的教程
Apr 28 Python
Python实现二维数组按照某行或列排序的方法【numpy lexsort】
Sep 22 Python
python实现kMeans算法
Dec 21 Python
使用python编写udp协议的ping程序方法
Apr 22 Python
Opencv+Python实现图像运动模糊和高斯模糊的示例
Apr 11 Python
完美解决pycharm 不显示代码提示问题
Jun 02 Python
pyCharm 设置调试输出窗口中文显示方式(字符码转换)
Jun 09 Python
python 读取.nii格式图像实例
Jul 01 Python
Python在字符串中处理html和xml的方法
Jul 31 Python
Python实现简单的猜单词
Jun 15 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的面试题集,附我的答案和分析(一)
2006/11/19 PHP
php实现的DateDiff和DateAdd时间函数代码分享
2014/08/16 PHP
浅析php创建者模式
2014/11/25 PHP
php计算2个日期的差值函数分享
2015/02/02 PHP
PHP5.5.15+Apache2.4.10+MySQL5.6.20配置方法分享
2016/05/06 PHP
PHP手机短信验证码实现流程详解
2018/05/17 PHP
使用js对select动态添加和删除OPTION示例代码
2013/08/12 Javascript
JavaScript中诡异的delete操作符
2015/03/12 Javascript
AngularJs 动态加载模块和依赖
2016/09/15 Javascript
Angular4.x通过路由守卫进行路由重定向实现根据条件跳转到相应的页面(推荐)
2018/05/10 Javascript
微信小程序实现自定义modal弹窗封装的方法
2018/06/15 Javascript
jQuery实现的3D版图片轮播示例【滑动轮播】
2019/01/18 jQuery
JavaScript之解构赋值的理解
2019/01/30 Javascript
Vue.js标签页组件使用方法详解
2019/10/19 Javascript
JS造成内存泄漏的几种情况实例分析
2020/03/02 Javascript
微信小程序开发(一):服务器获取数据列表渲染操作示例
2020/06/01 Javascript
python完成FizzBuzzWhizz问题(拉勾网面试题)示例
2014/05/05 Python
python实现的简单文本类游戏实例
2015/04/28 Python
Python利用正则表达式匹配并截取指定子串及去重的方法
2015/07/30 Python
python中正则的使用指南
2016/12/04 Python
python中numpy.zeros(np.zeros)的使用方法
2017/11/07 Python
python3大文件解压和基本操作
2017/12/15 Python
Django处理文件上传File Uploads的实例
2018/05/28 Python
Python实现自定义函数的5种常见形式分析
2018/06/16 Python
python pyinstaller 加载ui路径方法
2019/06/10 Python
python和c语言的主要区别总结
2019/07/07 Python
Python使用grequests(gevent+requests)并发发送请求过程解析
2019/09/25 Python
详解Python中import机制
2020/09/11 Python
CSS3 clip-path 用法介绍详解
2018/03/01 HTML / CSS
Ellesse英国官网:意大利高级运动品牌
2019/07/23 全球购物
学生实习推荐信范文
2013/11/26 职场文书
仓库规划计划书
2014/04/28 职场文书
幼儿园小班家长评语
2014/12/30 职场文书
2015年感恩节演讲稿(优选篇)
2015/03/20 职场文书
宾馆前台接待岗位职责
2015/04/02 职场文书
三好学生竞选稿范文
2019/08/21 职场文书