二.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实现 LeetCode 466 统计重复个数
466. 统计重复个数 定义由 n 个连接的字符串 s 组成字符串 S,即 S = [s,n].例如,["abc", 3]="abcabcabc". 另一方面, ...
- Java实现 LeetCode_0038_CountandSay
package javaLeetCode.primary; import java.util.Scanner; public class CountandSay_38 { public static ...
- java实现第六届蓝桥杯切开字符串
切开字符串 Pear有一个字符串,不过他希望把它切成两段. 这是一个长度为N(<=10^5)的字符串. Pear希望选择一个位置,把字符串不重复不遗漏地切成两段,长度分别是t和N-t(这两段都必 ...
- java实现第四届蓝桥杯逆波兰表达式
逆波兰表达式 正常的表达式称为中缀表达式,运算符在中间,主要是给人阅读的,机器求解并不方便. 例如:3 + 5 * (2 + 6) - 1 而且,常常需要用括号来改变运算次序. 相反,如果使用逆波兰表 ...
- Linux: 如何分割文件,不再被 4G 大小限制了
单文件 4G 限制 FAT32 4G 限制 百度网盘超出 4G 限制 单文件分割与合并 单文件,如:archive.tar.gz 分割 split -b 3000M -d -a 1 archive.t ...
- 用struts的action运行jsp页面
struts是开源框架.使用Struts的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间.如果我们想混合使用Servlets和JSP的优点来建立可扩展的应用,struts是一个不错的 ...
- 2、react-生命周期1※※※
生命周期: 一个人的生命周期:从出生到去世 出生得那一刻就是当前这一个人特性固定下来得那一刻:实例化期 出生了之后生长知道死的那一刻:生存期 去世了:销毁期 所以对于一个组件来说它的生命周期是三个时期 ...
- 第一次前端实习机试题 很粗糙的一个天气预报demo
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8 ...
- Python字符串处理 - str/bytes
目录 1. str 2. bytes / bytearray 3. printf-style String Formatting 1. str homepage str.count(sub[, sta ...
- Node.js 学习笔记(一)
node.js说白了就是JavaScript. node.js的性能是php的86倍(大概). 在下载完后可以用命令行打开及运行. 什么是 Web 服务器? Web服务器一般指网站服务器,是指驻留 ...