Django 之一些request封装的常用功能

一些常用的request对象属性

request.scheme:代表请求的方案,http或者https

request.path:请求的路径,比如请求127.0.0.1/org/list,那这个值就是/org/list

request.method:表示请求使用的http方法,GET或者POST请求

request.encoding:表示提交数据的编码方式

request.GET:获取GET请求

request.POST:获取post的请求,比如前端提交的用户密码,可以通过request.POST.get()来获取

另外:如果使用 POST 上传文件的话,文件信息将包含在 FILES 属性中

request.COOKIES:包含所有的cookie

request.META:一个标准的Python 字典,包含所有的HTTP 首部。

具体的头部信息取决于客户端和服务器,下面是一些示例:

  • CONTENT_LENGTH —— 请求的正文的长度(是一个字符串)。
  • CONTENT_TYPE —— 请求的正文的MIME 类型。
  • HTTP_ACCEPT —— 响应可接收的Content-Type。
  • HTTP_ACCEPT_ENCODING —— 响应可接收的编码。
  • HTTP_ACCEPT_LANGUAGE —— 响应可接收的语言。
  • HTTP_HOST —— 客服端发送的HTTP Host 头部。
  • HTTP_REFERER —— Referring 页面。
  • HTTP_USER_AGENT —— 客户端的user-agent 字符串。
  • QUERY_STRING —— 单个字符串形式的查询字符串(未解析过的形式)。
  • REMOTE_ADDR —— 客户端的IP 地址。
  • REMOTE_HOST —— 客户端的主机名。
  • REMOTE_USER —— 服务器认证后的用户。
  • REQUEST_METHOD —— 一个字符串,例如"GET" 或"POST"
  • SERVER_NAME —— 服务器的主机名。
  • SERVER_PORT —— 服务器的端口(是一个字符串)

request.user:一个 AUTH_USER_MODEL 类型的对象,表示当前登录的用户。

如果用户当前没有登录,user 将设置为 django.contrib.auth.models.AnonymousUser 的一个实例。你可以通过 is_authenticated() 区分它们

把request传给前端的时候,前端可以通过 {%  if request.user.is_authenticated  %}判断用户时候登录

request.session:一个既可读又可写的类似于字典的对象,表示当前的会话



扩展阅读:Django中的Request和Response(比本文内容全)

原文地址:https://www.cnblogs.com/bigtreei/p/8379371.html

时间: 2024-10-12 12:06:16

Django 之一些request封装的常用功能的相关文章

Android地图应用新视界--mapbox的常用功能封装工具类

上一篇- Android地图应用新视界--mapbox的应用开发之初始集成篇-中介绍了全球应用的多平台地图框架mapbox在Android端的集成步骤, 以及Android的地图应用新视界--mapbox的应用开发之简单功能提取篇,如果要了解建议先看前两篇哦 此篇将延续上篇内容,主要提取常用功能封装工具类,可以直接当工具类使用 直接上干货 如下: public class MapBoxUtils { private MapboxMap mapboxMap; private Context con

开源三维地球GIS引擎Cesium常用功能的开发

Cesium是一个非常优秀的三维地球GIS引擎(开源且免费).能够加载各种符合标准的地图图层,瓦片图.矢量图等都支持.支持3DMax等建模软件生成的obj文件,支持通用的GIS计算:支持DEM高程图.测试中的3D-Tiles分支还支持倾斜摄影生成的城市三维建筑群.国内许多三维GIS产品都基于Cesium进行封装(包括一些大厂).因为工作关系,我对Cesium的一些基本GIS功能进行了研究,特此记录下来. 如上图,这是一个给市政GIS\BIM管理平台做的原型,GIS部分使用Cesium,BIM部分

JavaScript 常用功能总结

编吐血整理加上翻译,太辛苦了~求赞! 本文主要总结了JavaScript 常用功能总结,如一些常用的额JS 对象,基本数据结构,功能函数等,还有一些常用的设计模式. 目录: 众所周知,JavaScript是动态的面向对象的编程语言,能够实现以下效果: 1. 丰富Web 网页功能 2. 丰富Web界面 3. 实现本地或远程存储. 4. 实现分布式网络应用的前端组件,并在后台进行数据存储管理. 5. 使用JavaScript可以实现完整的分布式Web 应用. JavaScript 中的数据类型 Ja

QTP常用功能

1.QTP录制过程的截图 查看录制脚本过程中QTP的截图可以在QTP中查找,在关键字视图中点击每一步都对应一个截图   2.在关键字视图中为测试步骤添加注释 在关键字视图中表格列头中单击鼠标右键,选择"Comment",则在这一列可以为每一步添加注释.   3.识别对象 编辑测试脚本的第一步就是识别对象.QTP针对不同语言开发的控件,采用不同的对象识别技术,根据加载的插件来选择相应的控件对象识别的依据.选择菜单"Tolls | Object Identification&qu

Django中的Request和Response

接触Django这么久了,从来没有好好学习关于Django中的Request和Response对象.借着文件上传下载的相关工作,现在总结一下也不错. 当一个页面请求过来,Django会自动创建一个Request对象,匹配URLconf中对应的view方法,并将这个Request对象作为第一个参数传递给view方法.而view方法会经过一系列操作之后,返回一个Response对象,返回给客户端. 具体的Request对象的属性(attribute)有很多(除了seesion都说只读属性): Htt

C#封装的常用文件操作类实例

本文实例讲述了C#封装的常用文件操作类.分享给大家供大家参考.具体如下: 这个C#类封装了我们经常能用到的文件操作方法,包括读写文件.获取文件扩展名.复制文件.追加内容到文件.删除文件.移动文件.创建目录.递归删除文件及目录.列目录.列文件等,不可多得. using System; using System.Text; using System.Web; using System.IO; namespace DotNet.Utilities { public class FileOperate

四十七 Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现搜索的自动补全功能

elasticsearch(搜索引擎)提供了自动补全接口 官方说明:https://www.elastic.co/guide/en/elasticsearch/reference/current/search-suggesters-completion.html 1.创建搜索自动补全字段suggest 自动补全需要用到一个字段名称为suggest类型为Completion类型的一个字段 所以我们需要用将前面的elasticsearch-dsl操作elasticsearch(搜索引擎)增加sugg

Python常用功能函数

Python常用功能函数汇总 1.按行写字符串到文件中 import sys, os, time, json def saveContext(filename,*name): format = '^' context = name[0] for i in name[1:]: context = context + format + str(i) context = str(context).replace('(','(').replace(')',')').replace(',',',').re

[转]Django中的Request和Response

接触Django这么久了,从来没有好好学习关于Django中的Request和Response对象.借着文件上传下载的相关工作,现在总结一下也不错. 当一个页面请求过来,Django会自动创建一个Request对象,匹配URLconf中对应的view方法,并将这个Request对象作为第一个参数传递给view方法.而view方法会经过一系列操作之后,返回一个Response对象,返回给客户端. 具体的Request对象的属性(attribute)有很多(除了seesion都说只读属性): Htt