二.httpRequest-httpResponse-JsonResponse对象
一.HttpRequest对象
HttpRequest在django.http这个模块中
它是用django创建
文档https://docs.djangoproject.com/en/1.11/ref/request-response/#httprequest-objects
属性:
HttpRequest.body
HttpRequest.path 不带参数的请求路径
HttpRequest.method
HttpRequest.encoding
HttpRequest.GET
HttpRequest.POST
HttpRequest.META
HttpRequest对象——方法:
HttpRequest.get_host() 获取主机名
HttpRequest.get_port()
HttpRequest.get_full_path() 获取完整请求路径
HttpRequest.is_secure() 是否是安全的
HttpRequest.is_ajax() 是否是ajax
属性查看效果:
views.py:
from django.http import HttpResponse
def index(request):
print(request.scheme)
print(request.method)
print(request.path)
print(request.body)
print(request.encoding)
print(request.POST)
print(request.META)
print(request.GET)
return HttpResponse("Hello world !!!")
刷新浏览器后终端效果如下:

方法查看效果:
def index(request):
print(request.get_host())
print(request.get_port())
print(request.get_full_path())
print(request.build_absolute_uri())
print(request.is_secure())
print(request.is_ajax())
print(request.readline())
print(request.__iter__())
return HttpResponse("Hello world !!!")
刷新浏览器后终端效果如下:

二.HttpResponse对象
HttpResponse在django.http这个模块中
传递一个字符串作为页面的内容到 HttpResponse 构造函数中即可
>>> from django.http import HttpResponse 导入模块
>>> response = HttpResponse("Here's the text of the Web page.") 实例化模块
>>> response = HttpResponse("Text only, please.", content_type="text/plain")
https://docs.djangoproject.com/en/1.11/ref/requestresponse/#httpresponse-objects HttpResponse对象——属性:
属性:
HttpResponse.content 返回普通的字符串
HttpResponse.charset 返回的字符集
HttpResponse.status_code 返回的状态码
HttpResponse.reason_phrase
方法:
HttpResponse.__init__(content=”, content_type=None, status=200, reason=None, charset=None)
(1)views.py: httpresponse返回字符串
def index(request):
res = HttpResponse()
res.content = "你好"
res.status_code = 300
return res
刷新浏览器后效果如下:

(2)views.py: httpresponse返回数据类型要特殊处理,因为它默认接收的是字符串
from django.http import HttpResponse
import json
def index(request):
data = ["a","b","c"] #列表
return HttpResponse(json.dumps(data)) #返回列表

其实上述效果可直接用JsonResponse对象解决,不用再用json.dumps序列化
三.JsonResponse对象
from django.http import HttpResponse,JsonResponse
def index(request):
data = ["a","b","c"] #列表
return JsonResponse(data,safe=False) #data是列表则safe参数要设置false,是字典则true,默认就是true所以不用设置
二.httpRequest-httpResponse-JsonResponse对象的更多相关文章
- Django day05 视图层之 (HttpRequest) \ (HttpResponse) \ (JsonResponse) 对象
一:视图层之HttpRequest对象 # 前台Post传过来的数据,包装到POST字典中 # request.POST # 前台浏览器窗口里携带的数据,包装到GET字典中 # request.GET ...
- Django框架(九):视图(二) HttpRequest对象、HttpResponse对象
1. HttpRequest对象 服务器接收到http协议的请求后,会根据报文创建HttpRequest对象,这个对象不需要我们创建,直接使用服务器构造好的对象就可以.视图的第一个参数必须是HttpR ...
- Asp.net有三大对象:HttpContext, HttpRequest, HttpResponse
一.Asp.net有三大对象:HttpContext, HttpRequest, HttpResponse.命名空间: System.Web程序集: System.Web(在 System.Web ...
- django基础2: 路由配置系统,URLconf的正则字符串参数,命名空间模式,View(视图),Request对象,Response对象,JsonResponse对象,Template模板系统
Django基础二 request request这个参数1. 封装了所有跟请求相关的数据,是一个对象 2. 目前我们学过1. request.method GET,POST ...2. reques ...
- Request对象和Response对象 JsonResponse对象 和 Django shortcut functions 和QueryDict对象
request request属性 属性: django将请求报文中的请求行.头部信息.内容主体封装成 HttpRequest 类中的属性. 除了特殊说明的之外,其他均为只读的. ''' 0.Http ...
- [摘]HttpContext, HttpRequest, HttpResponse, HttpRuntime, HttpServerUtility
[摘]http://www.cnblogs.com/fish-li/archive/2011/08/21/2148640.html HttpRuntime HttpRuntime公开了一个静态方法 U ...
- 运维开发笔记整理-JsonResponse对象
运维开发笔记整理-JsonResponse对象 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.使用HttpResponse发送json格式的数据 1>.HttpRespo ...
- Django——20141014深入理解Django HttpRequest HttpResponse的类和实例
深入理解Django HttpRequest HttpResponse的类和实例 了解META选项 了解中间件 理清所有模板传输模板变量的方式,并作出选择 Django模板系统:如何利用Django模 ...
- JavaScript学习总结(二)数组和对象部分
pt学习总结(二)数组和对象部分 2016-09-16 分类:WEB开发.编程开发.首页精华暂无人评论 来源:trigkit4 分享到:更多1 对象部分 Object类型 Object ...
- JsonResponse对象浅析
JsonResponse JsonResponse 对象: class JsonResponse(data, encoder=DjangoJSONEncoder, safe=True, json_ ...
随机推荐
- Java实现 蓝桥杯VIP 算法训练 求指数
问题描述 已知n和m,打印n1,n2,-,nm.要求用静态变量实现.nm表示n的m次方.已知n和m,打印n1,n2,-,nm.要求用静态变量实现.nm表示n的m次方.(每行显示5个数,每个数宽为12, ...
- Java实现 LeetCode 66 加一
66. 加一 给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一. 最高位数字存放在数组的首位, 数组中每个元素只存储单个数字. 你可以假设除了整数 0 之外,这个整数不会以零开头. 示 ...
- java实现第二届蓝桥杯四方定理
四方定理. 数论中有著名的四方定理:所有自然数至多只要用四个数的平方和就可以表示. 我们可以通过计算机验证其在有限范围的正确性. 对于大数,简单的循环嵌套是不适宜的.下面的代码给出了一种分解方案. 请 ...
- TZOJ 复习时间
描述 为了能过个好年,xhd开始复习了,于是每天晚上背着书往教室跑.为了追求更高的效率,xhd要根据难度值来选择合适的课程进行复习,复习后一门课的效率为前一门课之间的难度差的平方,而复习第一门课的效率 ...
- 两条命令实现nodejs快速安装
操作系统: debian, ubuntu, fedora 当前版本: v14.4.0 一键安装命令: curl -sL https://deb.nodesource.com/setup_14.x | ...
- 【快手初面】要求3个线程按顺序循环执行,如循环打印A,B,C
[背景]这个题目是当时远程面试时,手写的题目.自己比较惭愧,当时写的并不好,面试完就又好好的完善了下. 一.题意分析 3个线程要按顺序执行,就要通过线程通信去控制这3个线程的执行顺序. 而线程通信的方 ...
- PHP配合JS导出Excel大量数据
一般使用PHP导出Excel表格都会用PHPExcel,但是当遇到要导出大量数据时,就会导致超时,内存溢出等问题.因此在项目中放弃使用这种方式,决定采用前段生成Excel的方式来解决问题. 步骤如下: ...
- spring cloud 集成分布式配置中心 apollo(单机部署apollo)
一.什么是apollo? Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境.不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限.流程治理等特性,适用 ...
- PE文件介绍 (2)-DOS头,DOS存根,NT头
PE头 PE头由许多结构体组成,现在开始逐一学习各结构体 0X00 DOS头 微软创建PE文件格式时,人们正广泛使用DOS文件,所以微软充分考虑了PE文件对DOS文件的兼容性.其结果是在PE头的最前面 ...
- python基础001----Python+pycharm环境搭建
一.Python下载安装 1.python下载-----下载地址:https://www.python.org/downloads/windows/ 在python的官网下载python版本,需要下载 ...