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里面

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Calling LoadLibraryEx on ISAPI filter failed「建议收藏」

    Calling LoadLibraryEx on ISAPI filter failed「建议收藏」今天在访问IIS下的站点时莫名奇妙的遇到这个问题CallingLoadLibraryExonISAPIfilter“C://。。。” failed,前面引号中的“C://。。。”是加载的DLL的路径。打开IIS管理器点击web站点名称,点击ISAPI筛选器会在列表中看到前面错误中提到的那个不能加载的DLL的名称和执行路径,把它删掉即可。

    2022年10月31日
  • h5页面如何生成二维码_js 根据内容 生成二维码

    h5页面如何生成二维码_js 根据内容 生成二维码uniapp,vue皆可使用首先去下载qrcode.js链接可以在根目录中新建utils文件夹,把下载的js放进去)1.引入js并创建data变量importqrcodefrom’@/utils/qrcode.js’data(){ return{ url:””, qrcodeURL:”” } }, methods:{ //生成url二维满 creatQrCode(){ this.url=window.location.h

  • 第五章:多线程通信—wait和notify

    第五章:多线程通信—wait和notify第五章:多线程通信—wait和notify

  • java 卸载class_Java Class卸载与ClassLoader

    java 卸载class_Java Class卸载与ClassLoaderJVM中的Class只有满足以下三个条件,才能被GC回收,也就是该Class被卸载(unload):-该类所有的实例都已经被GC,也就是JVM中不存在该Class的任何实例。-加载该类的ClassLoader已经被GC。-该类的Java.lang.Class对象没有在任何地方被引用,如不能在任何地方通过反射访问该类的方法jsp和java类是完全不一样的概念。jsp->servlet…

  • db2修改字段长度的sql语句

    db2修改字段长度的sql语句

  • 阿里druid数据连接池jar包(完整版)[通俗易懂]

    阿里druid数据连接池jar包(完整版)[通俗易懂]Druid(德鲁伊)是阿里巴巴开发的号称为监控而生的数据库连接池,Druid是目前最好的数据库连接池。在功能、性能、扩展性方面,都超过其他数据库连接池,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况。Druid已经在阿里巴巴部署了超过600个应用,经过一年多生产环境大规模部署的严苛考验。Druid地址:https://github.com/alibaba/druidDRUID连…

发表回复

您的电子邮箱地址不会被公开。

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