Django的HttpRequest[通俗易懂]

Django的HttpRequest[通俗易懂]HttpReqeust对象服务器接收到http协议的请求后,会根据报文创建HttpRequest对象,这个对象不需要我们创建,直接使用服务器构造好的对象就可以。视图的第一个参数必须是HttpRequest对象,在django.http模块中定义了HttpRequest对象的API。属性下面除非特别说明,属性都是只读的。path:一个字符串,表示请求的页面的完整路径,不包含域名和参数部分。…

大家好,又见面了,我是你们的朋友全栈君。

HttpReqeust对象
服务器接收到http协议的请求后,会根据报文创建HttpRequest对象,这个对象不需要我们创建,直接使用服务器构造好的对象就可以。视图的第一个参数必须是HttpRequest对象,在django.http模块中定义了HttpRequest对象的API。

属性
下面除非特别说明,属性都是只读的。

path:一个字符串,表示请求的页面的完整路径,不包含域名和参数部分。

method:一个字符串,表示请求使用的HTTP方法,常用值包括:'GET'、'POST'。
在浏览器中给出地址发出请求采用get方式,如超链接。
在浏览器中点击表单的提交按钮发起请求,如果表单的method设置为post则为post请求。

encoding:一个字符串,表示提交的数据的编码方式。
如果为None则表示使用浏览器的默认设置,一般为utf-8。
这个属性是可写的,可以通过修改它来修改访问表单数据使用的编码,接下来对属性的任何访问将使用新的encoding值。

GET:QueryDict类型对象,类似于字典,包含get请求方式的所有参数。

POST:QueryDict类型对象,类似于字典,包含post请求方式的所有参数。

FILES:一个类似于字典的对象,包含所有的上传文件。

COOKIES:一个标准的Python字典,包含所有的cookie,键和值都为字符串。

session:一个既可读又可写的类似于字典的对象,表示当前的会话,只有当Django 启用会话的支持时才可用,详细内容见"状态保持"。

path、encoding

  1. 打开booktest/views.py文件,代码如下:

     def index(request):
         str='%s,%s'%(request.path,request.encoding)
         return render(request, 'booktest/index.html', {'str':str})
    

哪些属性都是在视图函数的request里面

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/148755.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python更新pip失败_pycharm怎么更新pip

    python更新pip失败_pycharm怎么更新pippycharm安装第三方模块失败,要求更新pip

    2022年8月27日
    8
  • c++ 颜色_color rgb

    c++ 颜色_color rgb1.OdCmColor转COLORREFOdCmColorodaColor;COLORREFrefColor=RGB(odaColor.red(),odaColor.green(),odaColor.blue());2. COLORREF转OdCmColorCOLORREFrefColorOdCmColorodaColor;odaColor.setRGB(GetR…

    2025年7月9日
    3
  • shell 获取系统时间_shell脚本打印当前时间

    shell 获取系统时间_shell脚本打印当前时间在shell脚本里常常需要获取系统时间来处理某项操作,今天系统的学习了一下如何获取系统时间。记录如下:linux的系统时间在shell里是可以直接调用系统变量的如:获取今天时期:`date+%Y%m%d`或`date+%F`或$(date+%y%m%d)命令输出结果如下:[root@centi-C sh]# date +%Y%m%d 20120727 [root@c

    2022年10月10日
    2
  • c++和java哪个好学_c++语言和Java语言,初学者该如何选择?「建议收藏」

    c++和java哪个好学_c++语言和Java语言,初学者该如何选择?「建议收藏」方向比努力更重要,对于初学编程的人来说选择一门合适的编程语言关系到自己以后的职业发展。c++和Java的区别有哪些?哪个更适合作为入门语言?今天就听小姐姐来讲一讲。 C++语言它是正宗的C语言的嫡系,由C语言发展而来。C++支持多种编程范式–面向对象编程、泛型编程和过程化编程,支持类:类、封装、重载等特性。C++语言的主要特点表现在两个方面,一是尽量兼容C,二是支持面向对象的方法。它操持了C的…

    2022年7月9日
    21
  • Python动态爬虫爬取京东商品评论[通俗易懂]

    Python动态爬虫爬取京东商品评论[通俗易懂]Python动态爬虫爬取京东商品评论1.概述京东商城是Python爬虫初学者试手的经典平台,反爬虫程度较低,但评论采取了动态加载的方式,爬取京东商品评论是学习动态爬虫的一个极佳方法。动态爬虫,即针对动态加载JSON文件网页的爬虫,其原理与静态爬虫没有本质区别,只是不爬取所见的静态目标网页,而是寻找该网页所加载的JSON文件,爬取JSON文件中的内容。2.目标观察观察京东具体商品评论页面:点击商品评价页:发现商品评价翻页的url不改变,可推测出其采用动态加载的方式,同时,会发现直接获取该

    2022年7月26日
    9
  • Web安全:概述_逆向和Web安全

    Web安全:概述_逆向和Web安全文章目录浏览器安全同源策略多进程结构沙箱恶意网址拦截跨站脚本攻击XSS定义示例分类浏览器安全同源策略浏览器的同源策略,限制了来自不同源的“document”或脚本对当前“document”的读取或修改。影响源的因素有:host、子域名、端口、协议等。多进程结构将浏览器的各个功能模块分开,各个浏览器实例分开,这样若一个进程崩溃,也不会影响到其他进程。GoogleChrome是第一个采取多进程架构的浏览器,其主要进程包括:浏览器进程、渲染进程、插件进程、扩展进程等。其中插件进程如flash、ja

    2022年9月14日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号