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字符串加密解密的三种方法分享(base64 win32com)
Jan 19 Python
浅析Python中将单词首字母大写的capitalize()方法
May 18 Python
基于Python实现文件大小输出
Jan 11 Python
5种Python单例模式的实现方式
Jan 14 Python
python3批量删除豆瓣分组下的好友的实现代码
Jun 07 Python
为Python的Tornado框架配置使用Jinja2模板引擎的方法
Jun 30 Python
python获取当前运行函数名称的方法实例代码
Apr 06 Python
python实现海螺图片的方法示例
May 12 Python
用Python识别人脸,人种等各种信息
Jul 15 Python
python中的错误如何查看
Jul 08 Python
python中的unittest框架实例详解
Feb 05 Python
Opencv中cv2.floodFill算法的使用
Jun 18 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
PHP5常用函数列表(分享)
2013/06/07 PHP
Windows下的PHP安装文件线程安全和非线程安全的区别
2014/04/23 PHP
如何使用php实现评委评分器
2015/07/31 PHP
PHP添加图片水印、压缩、剪切的封装类
2015/08/17 PHP
PHP常用设计模式之委托设计模式
2016/02/13 PHP
Laravel实现表单提交
2017/05/07 PHP
PHP封装的非对称加密RSA算法示例
2018/05/28 PHP
PhpStorm2020.1 安装 debug - Postman 调用的详细教程
2020/08/17 PHP
最佳6款用于移动网站开发的jQuery 图片滑块插件小结
2012/07/20 Javascript
js图片延迟加载的实现方法及思路
2013/07/22 Javascript
浅析JS中document对象的一些重要属性
2014/03/06 Javascript
javascript读写json示例
2014/04/11 Javascript
jQuery超赞的评分插件(8款)
2015/08/20 Javascript
javascript类型系统 Window对象学习笔记
2016/01/07 Javascript
javascript简单判断输入内容是否合法的方法
2016/05/11 Javascript
javascript实现页面滚屏效果
2017/01/17 Javascript
JS优化与惰性载入函数实例分析
2017/04/06 Javascript
基于jQuery和CSS3实现APPLE TV海报视差效果
2017/06/16 jQuery
JavaScript实现单例模式实例分享
2017/12/22 Javascript
JS实现监控微信小程序的原理
2018/06/15 Javascript
JavaScript事件对象event用法分析
2018/07/27 Javascript
关于微信小程序bug记录与解决方法
2018/08/15 Javascript
Vue模板语法中数据绑定的实例代码
2019/05/17 Javascript
jQuery实现input输入框获取焦点与失去焦点时提示的消失与显示功能示例
2019/05/27 jQuery
Vue循环中多个input绑定指定v-model实例
2020/08/31 Javascript
Python格式化压缩后的JS文件的方法
2015/03/05 Python
python opencv摄像头的简单应用
2019/06/06 Python
Python的Tkinter点击按钮触发事件的例子
2019/07/19 Python
Python3分析处理声音数据的例子
2019/08/27 Python
sklearn+python:线性回归案例
2020/02/24 Python
Python图像处理库PIL的ImageDraw模块介绍详解
2020/02/26 Python
python 根据列表批量下载网易云音乐的免费音乐
2020/12/03 Python
美国婴儿服装购物网站:Gerber Childrenswear
2020/05/06 全球购物
波兰多品牌运动商店:StreetStyle24.pl
2020/09/22 全球购物
幼儿园教师演讲稿
2014/05/06 职场文书
庆祝教师节演讲稿
2014/09/03 职场文书