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多线程threading.Lock锁用法实例
Nov 01 Python
python实现远程通过网络邮件控制计算机重启或关机
Feb 22 Python
Python列表解析配合if else的方法
Jun 23 Python
python提取具有某种特定字符串的行数据方法
Dec 11 Python
Django如何使用第三方服务发送电子邮件
Aug 14 Python
PyCharm2018 安装及破解方法实现步骤
Sep 09 Python
pytorch使用 to 进行类型转换方式
Jan 08 Python
pycharm 更改创建文件默认路径的操作
Feb 15 Python
基于PyQT实现区分左键双击和单击
May 19 Python
python mysql中in参数化说明
Jun 05 Python
在keras 中获取张量 tensor 的维度大小实例
Jun 10 Python
解决numpy数组互换两行及赋值的问题
Apr 17 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和ACCESS写聊天室(五)
2006/10/09 PHP
php和数据库结合的一个简单的web实例 代码分析 (php初学者)
2011/07/28 PHP
Windows下的PHP安装pear教程
2014/10/24 PHP
thinkPHP5.0框架事务处理操作简单示例
2018/09/07 PHP
php操作redis数据库常见方法实例总结
2020/02/20 PHP
php使用pthreads v3多线程实现抓取新浪新闻信息操作示例
2020/02/21 PHP
PHP基于进程控制函数实现多线程
2020/12/09 PHP
Aster vs KG BO3 第一场2.19
2021/03/10 DOTA
js异或加解密效果代码
2008/06/25 Javascript
解决css和js的{}与smarty定界符冲突问题的两种方法
2013/09/10 Javascript
JavaScript 2048 游戏实例代码(简单易懂)
2016/03/25 Javascript
轻量级jQuery插件slideBox实现带底栏轮播(焦点图)代码
2016/03/28 Javascript
JS实现禁止鼠标右键的功能
2016/10/15 Javascript
ajax前台后台跨域请求处理方式
2018/02/08 Javascript
nodejs中密码加密处理操作详解
2018/03/20 NodeJs
Vue 按键修饰符处理事件的方法
2018/05/04 Javascript
Vue中使用的EventBus有生命周期
2018/07/12 Javascript
JavaScript中arguments和this对象用法分析
2018/08/08 Javascript
Vue常用的几个指令附完整案例
2018/11/06 Javascript
Vue CLI项目 axios模块前后端交互的使用(类似ajax提交)
2019/09/01 Javascript
Python自动调用IE打开某个网站的方法
2015/06/03 Python
Python基于pygame实现的弹力球效果(附源码)
2015/11/11 Python
Python使用pygame模块编写俄罗斯方块游戏的代码实例
2015/12/08 Python
Python决策树和随机森林算法实例详解
2018/01/30 Python
解决Python print 输出文本显示 gbk 编码错误问题
2018/07/13 Python
Python并发之多进程的方法实例代码
2018/08/15 Python
python实现蒙特卡罗方法教程
2019/01/28 Python
python 爬取马蜂窝景点翻页文字评论的实现
2020/01/20 Python
Python的collections模块真的很好用
2021/03/01 Python
SK-II神仙水美国官网:SK-II美国
2020/02/25 全球购物
毕业生教师求职信
2013/10/20 职场文书
大学生冰淇淋店商业计划书
2014/01/14 职场文书
基层党建工作宣传标语
2014/06/24 职场文书
MySQL 数据丢失排查案例
2021/05/08 MySQL
Oracle 区块链表创建过程详解
2021/05/15 Oracle
SQL Server远程连接的设置步骤(图文)
2022/03/23 SQL Server