day20-视图获取用户请求相关信息以及请求头
一、前言
我们之前学到了request.POST和reuqest.GET来获取前端发过来的请求数据,其实前端当中不止这么点请求,其实request是一个对象,这个对象封装了这个类里面的所有的信息,所以,还有其他很多请求头信息,今天我们就来谈谈这个请求头信息吧。
二、查看request这个类
2.1、查看这个类
def index(request):
print(type(request))
return HttpResponse("ok")
#输出
<class 'django.core.handlers.wsgi.WSGIRequest'>
2.2、导入这个类
说明:导入这个类,看看有哪些信息
def index(request):
from django.core.handlers.wsgi import WSGIRequest #导入这个类
return HttpResponse("ok")
如图:

三、获取用户的相关信息
说明:由上面可知,用户的请求相关信息在request.environ中
def index(request):
print(request.environ)
return HttpResponse("ok")
#输出(字典类型的用户信息)
{'CLASSPATH': '.;D:\\Java\\jdk1.7.0_17\\jre\\lib\\rt.jar;.;', ........., 'SYSTEMDRIVE': 'C:'}
所以request.GET和request.post也是有WSGIRequest这个类里面的。因为request.environ是字典,我们就来看看里面循环字典的效果:
def index(request):
print(request.environ)
for k,v in request.environ.items():
print("{0}:{1}".format(k,v))
return HttpResponse("ok")
如图:

所以获取用户的浏览器:
def index(request):
print(request.environ.get("HTTP_USER_AGENT"))
return HttpResponse("ok")
如图:

四、总结
- request是WSGIRequest类的一个对象
- 这个对象里面封装了environ、POST、GET、以及COOKIE等属性
- 想要看一下这个类,可以通过 type(request)来查看

浙公网安备 33010602011771号