django框架:HttpRequest对象属性详解!

日期:2018-06-29 01:46:23 章节:  django开发流程及原理

HttpRequest对象属性常用如下:path、method、encoding、GET、POST、FILES、COOKIES、session

①path

值是一个字符串,表示请求页面完整路径,不包括域名在内

②method

值是一个字符串,表示Http请求的方式,通常为GET、POST

encoding

表示提交数据的编码方式

    (1)如果值为None,表示浏览器默认设置,通常为UTF-8

    (2)这个属性是可写的,可以通过修改它来修改访问表单数据使用的编码,接下来对属性的任何访问将使用新的encoding值

④GET

用来接收GET请求的参数,类似字典对象

⑤POST

用来接受POST请求参数,类似字典对象

FILES

包含所有上传文件,类似字典对象

⑦COOKIES

是一个典型的字典对象,cookie存储在客户端,key和value都为字符串

⑧session

会话状态保持。

⑨is_ajax()方法

判断请求是否为ajax发起。即XMLHttpRequest发起。是的话则为True


这里看一下path、method、encoding、GET的获取demo

首先定义视图如下:

def httprequest(request):

    pathUrl=request.path

    methodName = request.method

    encodingName=request.encoding

    getValue=request.GET['a']

    context={'path':pathUrl,'methodName':methodName,'encodingName':encodingName,'getValue':getValue}

    return  render(request,'booktest/httprequest.html',context)

然后下模板中绑定值如下:

<body>

    <h1>django框架:HttpRequest属性介绍:</h1>

    <ul>

        <li>path属性:{{path}}</li>

        <li>method属性:{{methodName}}</li>

        <li>encoding编码:{{encodingName}}</li>

        <li>获取到GET参数:{{getValue}}</li>

    </ul>

</body>

python manage.py runserver 8080启动服务查看值

请求地址:http://127.0.0.1:8080/httprequest/?a=www.isoftvip.com

django-httprequest对象.png