Django的request对象详解:
默认页面请求都是get请求
当一个页面被请求时,django就会创建一个包含本次请求原信息的HttpRequest对象。
django会将这个对象自动传递给响应的视图函数,一般视图函数约定俗成地使用request参数承接这个对象。
常用的请求方式
-
GET:默认是get请求,请求数据以明文形式放在路由上,get的格式是以?开头,键等于值的形式,以&来分割键值对,通常用于和服务器获取资源。包含所有HTTP GET参数的类字典对象
https://www.baidu.com/s?wd=图片&rsv_spt=1 -
POST:请求数据隐藏发送,安全系数更高。通常用于向服务器提交资源。包含所有HTTP POST参数的类字典对象
-
path_info: 返回用户访问url, 不包括域名
-
method: 请求中使用的HTTP方法的字符串表示,全大写表示。
-
body: 请求体,byte类型,request POST的数据就是从body里面提取到的
-
delete
-
update
-
put
Django默认提供了处理get和post请求的参数,其他类型的请求需要使用django的视 图类来自定义。
- | - |
---|---|
request.COOKIES | 接收cookie的方法 |
request.GET | 获取get请求数据的方法 |
request.POST | 获取post请求数据的方法 |
request.FILES | 获取文件上传请求数据的方法 |
request.method | 获取请求的方法 |
request.path | 请求的路径 |
request.get_raw_uri | 请求的url |
request.META | 请求的详细参数 |
request.META.OS | 请求端系统 |
request.META.HTTP_USER_AGENT | 用户请求头,返回请求浏览器版本 |
request.META.HTTP_HOST | 请求的主机 |
request.META.HTTP_REFERER | 请求的来源 |