django系列3.4-- request对象和response对象(未完待续)
一.request对象
详细信息可以查阅django官方文档
共有五种请求相关的常用值
request.path_info 返回用户访问的url不包括域名
request.method 请求中使用的HTTP方法的字符串表示,全大写
request.GET 包含所有HTTP GET参数的类字典对象(request.GET.dict())
request.POST 包含所有HTTP POST参数的类字典对(request.POST.dict())
request.body 整个请求体, byte类型 request.POST的数据就是从body里面提取到的
request.scheme
表示请求方案(http或https 通常)的字符串。
request.body
原始http请求体, 也可以使用类似的方法 request.read()
request.path_info
url的路径信息部分
request.method
请求中使用的http请求方法
if request.method == 'GET':
pass
elif request.method == 'POST':
pass
request.encoding
当前表单提交数据的编码,可以写入这个属性更改访问表单数据时使用的编码,任何后续属性访问都将使用这个编码
request.content_type
标识请求的MIME类型的字符串,从CONTENT_TYPE标头解析
request.content_params
content_type标题中包含的键/值参数字典
request.GET
一个包含http get请求参数的字典对象
request.POST
包含http post请求参数的字典
request.COOKIES
一个包含所有cookie信息的字典, key,value都是字符串类型
request.FILES
一个包含所有上传文件的类似字典的对象, 每一个key都是
<input type='file' name=“”>
标签中的name,每个value都是一个上传的文件,只有当请求方法为POST且向请求发送的<form>
具有enctype="multipart/form-data"
时,文件才会包含数据。否则,文件将是一个类似于字典的空白对象。request.META
一个包含所有http请求投的字典
CONTENT_LENGTH – 请求体长度(string).
CONTENT_TYPE – The MIME type of the request body.
HTTP_ACCEPT – Acceptable content types for the response.
HTTP_ACCEPT_ENCODING – Acceptable encodings for the response.
HTTP_ACCEPT_LANGUAGE – Acceptable languages for the response.
HTTP_HOST – The HTTP Host header sent by the client.
HTTP_REFERER – The referring page, if any.
HTTP_USER_AGENT – The client’s user-agent string.
QUERY_STRING – The query string, as a single (unparsed) string.
REMOTE_ADDR – The IP address of the client.
REMOTE_HOST – The hostname of the client.
REMOTE_USER – The user authenticated by the Web server, if any.
REQUEST_METHOD – A string such as "GET" or "POST".
SERVER_NAME – The hostname of the server.
SERVER_PORT – The port of the server (as a string).
django本身没有设置但可以设置的属性
request.current_app # 模板语言中将使用其值作为current_app参数来reverse()。
request.urlconf # 用作当前请求的根URLconf,覆盖ROOT_URLCONF设置
通过中间件设置的属性
request.session # SessionMiddleware
request.site # CurrentSiteMiddleware
request.user # AuthenticationMiddleware
二.response对象
引入方式
from django.http import HttpResponse
使用
1.传递字符串
response = HttpResponse("OK!")
response = HttpResponse("OK!", content_type="text/plain")
2.设置或删除响应头信息
response = HttpResponse()
response["Content-Type"] = "text/html"; charset='UTF-8'
3.属性
HttpResponse.content:响应内容
HttpResponse.charset:响应内容的编码
HttpResponse.status_code:响应的状态码
django系列3.4-- request对象和response对象(未完待续)的更多相关文章
- django HTTP请求(Request)和回应(Response)对象
Django使用request和response对象在系统间传递状态.—(阿伦)当一个页面被请示时,Django创建一个包含请求元数据的 HttpRequest 对象. 然后Django调入合适的视图 ...
- request对象和response对象,什么时候用,具体用哪一个,没有感觉
request对象和response对象,什么时候用,具体用哪一个,没有感觉
- JAVA-JSP内置对象之response对象
相关资料:<21天学通Java Web开发> response对象1.response对象用来给客户端传送输出信息. 方法 ...
- ASP.NET MVC 系列随笔汇总[未完待续……]
ASP.NET MVC 系列随笔汇总[未完待续……] 为了方便大家浏览所以整理一下,有的系列篇幅中不是很全面以后会慢慢的补全的. 学前篇之: ASP.NET MVC学前篇之扩展方法.链式编程 ASP. ...
- Request对象和Response对象 JsonResponse对象 和 Django shortcut functions 和QueryDict对象
request request属性 属性: django将请求报文中的请求行.头部信息.内容主体封装成 HttpRequest 类中的属性. 除了特殊说明的之外,其他均为只读的. ''' 0.Http ...
- django的request对象和response对象
概述Django 使用 request 和 response 对象表示系统状态数据..当请求一个页面时,Django创建一个 HttpRequest 对象.该对象包含 request 的元数据. 然后 ...
- django基础2: 路由配置系统,URLconf的正则字符串参数,命名空间模式,View(视图),Request对象,Response对象,JsonResponse对象,Template模板系统
Django基础二 request request这个参数1. 封装了所有跟请求相关的数据,是一个对象 2. 目前我们学过1. request.method GET,POST ...2. reques ...
- python 之 Django框架(Django框架简介、视图装饰器、request对象、Response对象)
12.33 Django框架简介: MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器( ...
- Django视图函数之request请求与response响应对象
官方文档: https://docs.djangoproject.com/en/1.11/ref/request-response/ 视图中的request请求对象: 当请求页面时,Django创建一 ...
随机推荐
- could not be installed at this time
无法下载应用 此时无法安装 Unable to Download App ''App" could not be installed at this time 编译程序的时候,Target ...
- Best free online svn repositories
Maybe you want to develop in a custom team environment or you usualy work on different machines (tha ...
- 12 并发编程-(线程)-线程queue&进程池与线程池
queue 英 /kjuː/ 美 /kju/ 队列 1.class queue.Queue(maxsize=0) #队列:先进先出 import queue q=queue.Queue() q.put ...
- Oracle安装过程出现问题---------安装Oracle11gR2先决条件检查失败
一.错误信息当安装到“先决条件检查” 时,提示如下图所示的错误: 二.错误原因一般情况下,由于操作系统未开启默认共享,导致Oracle无法检查环境的可用性. 三.解决方法1.在运行中(或键盘按 Win ...
- Angular2中Input和Output
@Input @Input是用来定义模块的输入的,用来让父模块往子模块传递内容: @Output 子模块自定义一些event传递给父模块用@Output. 对于angular2中的Input和Outp ...
- 背景半透明rgba最佳实践
by 一丝 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <tit ...
- ios 获取当前wifi名称
ios5之前可以通过读取配置文件获取,ios5以后苹果修改wifi列表文件位置,只有root权限才可以读取. ios4:/System/Library/SystemConfiguration/WiFi ...
- war项目部署流程
准备: 1安装jdk1.7及以上版本 2安装tomcat7及以上版本 到%tomcat%/bin目录下记事本编辑server.xml, 配置<Connector>元素port端口,及< ...
- 35-Python - 去除list中的空字符
https://www.cnblogs.com/yspass/p/9434366.html list1 = ['122', '2333', '3444', '', '', None] a = list ...
- 基于etcd插件的CoreDNS动态域名添加
前提条件:已经有一个可用的etcd环境. 一.CoreDNS简介 CoreDNS是一个DNS服务器,和Caddy Server具有相同的模型:它链接插件.CoreDNS是云本土计算基金会启动阶段项目. ...