Django 使用request获取浏览器发送的参数(Django编程-5)
1.url:需要正则去匹配
url(r'^index/(num)/$',view.index)
匹配到的参数会自动传入对应的视图函数
也可以给匹配到的参数起名字?P
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
# 获取GET后面的数据(获取查询字符串数据)
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获取浏览器发送的参数(Django编程-5)的更多相关文章
- django 使用 request 获取浏览器发送的参数
django 使用 request 获取浏览器发送的参数 转载请注明出处 https://blog.csdn.net/fanlei5458/article/details/80638348 获 ...
- django 修改 request 对象中的请求参数, 并重新赋值给 request 对象
直接上代码, 实现流程看代码及注释 def your_view(self, request): method = request.method if method == "GET" ...
- 服务器获取浏览器发送请求中的cookies,选取自己需要的cookie
String cookieName = “userID”; // 设置自己需要的cookie名 Cookie cookies[] = request.getCookies(); // 获取请求中的所有 ...
- request获取url链接和参数
//Returns the part of this request's URL from the protocol name up to the query string in th ...
- request 获取请求参数
/** * 根据request获取请求的用户参数 * @return * @return */ protected <T> T getParamConvertEntity(Class cl ...
- JS获取浏览器地址栏的多个参数值的任意值
getParamValue("id"); //http://localhost:2426/TransactionNotes.aspx?id=100 //返回值是100: // 根据 ...
- 【转】javascript浏览器参数的操作,js获取浏览器参数
原文地址:http://www.haorooms.com/post/js_url_canshu html5修改浏览器地址:http://www.cnblogs.com/JiangXiaoTian/ar ...
- 如何获取浏览器URL中查询字符串的参数
首先要知道Location这个对象以及这个对象中的一些属性: href:设置或返回完整的url.如本博客首页返回http://www.cnblogs.com/wymninja/ host:设置或返回主 ...
- jQuery获取浏览器参数
当我们需要获取浏览器参数是,我们可以使用jQuery进行获取,具体方法如下: 例如获取参数的地址:http://www.test.com?a="111"&b="2 ...
随机推荐
- cookie、session的联系和区别,多台web服务器如何共享session
1.Cookie与Session的联系: cookie在客户端保存状态,session在服务器端保存状态.但是由于在服务器端保存状态的时候,在客户端也需要一个标识,所以session也可能要借助coo ...
- 连续子数组的最大和 java实现
package findMax; /** * 连续子数组的最大和 * @author root * */ public class FindMax { static int[] data = {1,- ...
- C代码输出日志
模板代码,在实际开发中可以使用: Android.mk文件增加(放到 include $(CLEAR_VARS)下面) LOCAL_LDLIBS += -llog C代码中增加 #include &l ...
- 自定义ViewPager+RadioGroup联动效果的实现
package com.loaderman.myviewpager; import android.os.Bundle; import android.support.v7.app.AppCompat ...
- kvm虚拟机操作相关命令及虚拟机和镜像密码修改
虚拟机生命周期管理 1)查看kvm虚拟机状态 #virsh list --all 2)KVM虚拟机开机 # virsh start oeltest01 3)KVM虚拟机关机或断电 关机 默认情况下vi ...
- 整型,长整型,无符号整型等 大端和小端(Big endian and Little endian)
一.大端和小端的问题 对于整型.长整型.无符号整型等数据类型,Big endian 认为第一个字节是最高位字节(按照从低地址到高地址的顺序存放数据的高位字节到低位字节):而 Little endian ...
- JSP 简单标签extends SimpleTagSupport
1.控制JSP页面某一部分内容是否执行 public void doTag() this.getJspBody().invoke(null);执行 空白,不执行 2.控制JSP页面内容重复执行 pac ...
- Xcode中Info.plist文件里的"Bundle versions string, short" 跟 "Bundle version" 的区别
Bundle versions string, short:用于itunes上显示的版本号,即对外的版本.(最多是3个部分组成即 x.y.z) Bundle version:内部项目管理的版本号,不对 ...
- Ubuntu中安装memcache并且在Python中连接memcache
1.安装memcache到Ubuntu. PS:依赖libevent,需要提前安装 yum install libevent-devel #centos中使用这个 apt-get install li ...
- SQL:SQL优化
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...