当前位置:首页 > Web开发 > 正文

但不包含域名和参数

2024-03-31 Web开发

标签:

一。HttpResponse 1、总结django视频103核心常识点

引入的要领:from django.core.handlers.wsgi import WSGIRequest

讲了httpresponse东西的界说属性要领,并写了很多例子,进行展示演练

2HttpRequest东西的界说及孕育产生过程

Django在接收到http请求之后,会按照http请求携带的参数以及报文信息创建一个WSGIRequest东西,并且作为视图函数第一个参数传给视图函数。也就是我们经常看到的request参数。在这个东西上我们可以找到客户端上传上来的所有信息。

3、常用属性及其含义

WSGIRequest东西上大部分的属性都是只读的。

常用的属性及含义有:

1.path:请求处事器的完整“路径”,但不包罗域名和参数。好比,那么path就是/xxx/yyy/。

2.method:代表当前请求的http要领。好比是GET还是POST。

3.GET:一个django.http.request.QueryDict东西。操纵起来类似于字典。这个属性中包罗了所有以?xxx=xxx的方法上传上来的参数。

4.POST:也是一个django.http.request.QueryDict东西。这个属性中包罗了所有以POST方法上传上来的参数。

5.FILES:也是一个django.http.request.QueryDict东西。这个属性中包罗了所有上传的文件。

6.COOKIES:一个标准的Python字典,包罗所有的cookie,键值对都是字符串类型。

7.session:一个类似于字典的东西。用来操纵处事器的session。

8.REMOTE_HOST:客户真个主机名。

9.REQUEST_METHOD:请求要领。一个字符串类似于GET或者POST。

10.SERVER_NAME:处事器域名。

11.SERVER_PORT:处事器端标语,是一个字符串类型。

12.META:存储的客户端发奉上来的所有header信息。

不常用的属性及含义:

1.CONTENT_LENGTH:请求的正文的长度(是一个字符串)。

2.CONTENT_TYPE:请求的正文的MIME类型。

3.HTTP_ACCEPT:响应可接收的Content-Type。

4.HTTP_ACCEPT_ENCODING:响应可接收的编码。

5.HTTP_ACCEPT_LANGUAGE 响应可接收的语言。

6.HTTP_HOST:客户端发送的HOST值。

7.HTTP_REFERER:在访谒这个页面上一个页面的url。

8.QUERY_STRING:单个字符串形式的盘问字符串(未解析过的形式)。

9.REMOTE_ADDR:客户真个IP地点。如果处事器使用了nginx做反向代办代理或者负载均衡,那么这个值返回的是127.0.0.1,这时候可以使用HTTP_X_FORWARDED_FOR来获取,所以获取ip地点的代码片段如下:(视频中有提到,,但是不懂)

if request.META.has_key(‘HTTP_X_FORWARDED_FOR‘):  

ip =  request.META[‘HTTP_X_FORWARDED_FOR‘]  

else:  

ip = request.META[‘REMOTE_ADDR‘]

4、常用要领及其含义

1.is_secure():是否是给与https协议。

2.is_ajax():是否给与ajax发送的请求。道理就是判断请求头中是否存在X-Requested-With:XMLHttpRequest。

3.get_host():处事器的域名。如果在访谒的时候还有端标语,那么会加上端标语。好比:9000。

4.get_full_path():返回完整的path。如果有盘问字符串,还会加上盘问字符串。好比/music/bands/?print=True。

5.get_raw_uri():获取请求的完整url

二、QueryDict 1、总结django视频104核心常识点

引入要领:from django.http.request import QueryDict

讲述了querydict东西有哪些,各自的用法,着重强调了getgetlist的区别

2、举例说明QueryDict东西有哪些

request.GETrequest.POST都是QueryDict东西

3、两个要领及其含义

1.get要领:用来获取指定key的值,如果没有这个key,那么会返回None。

2.getlist要领:如果浏览器上传上来的key对应的值有多个,那么就需要通过这个要领获取。

4、案例代码并对此中重要部分的注释

1.在这段代码中  default=1   是让这个路由获取的默认的是第一页

2.装饰器是确保下面的代码都能正常运行,有get,有post

3.else中的tags中:

在前提是给了两个tags,如果直接用get来获取,那么得到的功效只有一个,是后面的 阿谁,用getlist就可以把两个tags都获取到

图示:

HttpResponse及QueryDict

标签:

原文地点:https://www.cnblogs.com/DRY-9916/p/12258938.html

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/30570.html