Django的视图响应类型
Django的视图响应类型
一、 视图函数编写原则
视图函数接受HTTP请求并返回响应,可以放在任何地方,可以是任何功能;视图函数可以返回Web文本,页面、重定向、错误、图片等任何内容;视图函数通过HttpResponse、JsonResponse等类表达并返回响应;按约定,视图函数放在对应app中的views.py文件中
二、 Django的响应类型
任何一个URL请求,在Django中会形成一个对应的反馈,而这个反馈或叫响应是以类的形式表达。
1、 HttpResponse类及子类(共10个)
类型 |
说明 |
HttpResponse |
主要反馈类型,父类,HTTP状态码默认为200 |
HttpResponseRedirect |
重定向,HTTP状态码为302 |
HttpResponsePermantRedirect |
永久重定向,HTTP状态码为301 |
HttpResponseNotModified |
网页无法改动,该类型无任何参数,HTTP状态码为304 |
HttpResponseBadRequest |
不良响应,HTTP状态码为400 |
HttpResponseForbidden |
禁止访问,HTTP状态码为403 |
HttpResponseNotAllowed |
不被允许,HTTP状态码为405 |
HttpResponseGone |
HTTP状态码为410 |
HttpResponseServerError |
服务器错误,HTTP状态码为500 |
HttpResponseNotFound |
404错误,HTTP状态码为404 |
格式:HttpResponse(content,content_type=None,status=200,charset=None)
Content:对url请求响应返回的字符串,表达HTML文本的字符信息
Content_type:MIME格式的返回内容类型,以何种方式解析该字符串,是以文本格式解析还是文件形式还是字符串或是图片的形式或者是其他类型的格式解析
Status:响应状态码,默认是200
Charset:返回响应的字符集
2、 JsonResponse类
返回json格式的数据
格式:JsonResponse(data)
data:字典类型,返回的JSON类型数据
3、 StreamingHttpResponse类
格式:StreamingHttpResponse(streaming_content)
streaming_content:内容的迭代器,以内容流的方式响应
4、 FileResponse类
反馈一个文件
格式:FlieResponse(stream)
stream:以流形式打开后的文件
Django的视图响应类型的更多相关文章
- Django的视图流式响应机制
Django的视图流式响应机制 Django的响应类型:一次性响应和流式响应. 一次性响应,顾名思义,将响应内容一次性反馈给用户.HttpResponse类及子类和JsonResponse类属于一次性 ...
- Django之视图
Django之视图 Django的View(视图) 一个视图函数(类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应. 响应可以是一张网页的HTML内容,一个 ...
- Django通用视图APIView和视图集ViewSet的介绍和使用
原 Django通用视图APIView和视图集ViewSet的介绍和使用 2018年10月21日 14:42:14 不睡觉假扮古尔丹 阅读数:630 1.APIView DRF框架的视图的基类是 ...
- Django之视图函数总结
Django之视图函数总结 HttpRequest与HttpResponse http请求中产生两个核心对象: HttpRequest对象:用户请求相关的所有信息(对象) HttpResponse对象 ...
- Django之视图层介绍
1. 伪静态设置: 路由层: url('^index/$', views.index), url('^article/(?P<id>(\d+)).html/$', views.articl ...
- 【笔记】Django的视图
[笔记]Django的视图 Python Django Django的View(视图) 一个视图函数(类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应. 响应 ...
- 03 Django之视图函数
一.Django的视图函数view 一个视图函数(类),简称视图,是一个简单的Python函数(类),它接受WEB请求并返回Web响应. 响应可以是一张网页的HTML内容,一个重定向,一个404错误, ...
- 【Django】 视图层说明
[Django视图层] 视图层的主要工作是衔接HTTP请求,Python程序和HTML模板,使他们能够有机互相合作从模型层lou到数据并且反馈.说到视图层的工作就有以下几个方面要说 ■ URL映射 对 ...
- Django基本视图
Django基本视图 下面这三个类也许不能提供项目所需的所有的功能,这些应用于基于类的视图或Mixins情形下. 大多数Django的内建视图继承于其他基于类的视图或者各种mixins中,因为继承链是 ...
随机推荐
- FusionChart实现柱状图、饼状图的动态数据显示
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- MySQL---2、安装与部署
1.MySQL下载 MySQL版本的选择MySQL Community Server 社区版本,开源免费,但不提供官方技术支持.MySQL Enterprise Edition 企业版本,需付费,可以 ...
- JavaScript根据国家二字码获取国家全称
function getCountryNameByCode(code) { var countryName = ''; switch(code) { case "US": coun ...
- 10、springboot之集成druid
在pom.xml中添加 <dependency> <groupId>com.alibaba</groupId> <artifactId>druid< ...
- FATAL bad indentation of a mapping entry at line 83, column 3: branch: master 已解决;
部署hexo 时候,修改完_config.yml 文件后更新报错如下,问题解决: FATAL bad indentation of a mapping entry at line 83, colum ...
- html和css入门 (二)
CSS基础 什么是CSS 简单来说,层叠样式表(Cascading Style Sheet)是一种专门用来控制界面外观风格的文档. CSS发展历史 1996年 CSS 1.0 规范面世,其中加入了字体 ...
- 瞥了一眼js
JS打开超链接的几种形式1.window.open(''url'') 2.用自定义函数<script>function openWin(tag,obj){obj.target=" ...
- alembic 数据库管理
alembic简介 Alembic是SQLAlchemy作者编写的Python数据库迁移工具 安装 pip install alembic alembic 操作流程 初始化 alembic init ...
- 算法之水仙花数(Java语言)
概述 在数论中,水仙花数(Narcissistic number),也被称为超完全数字不变数(pluperfect digital invariant, PPDI).自恋数.自幂数.阿姆斯壮数或阿姆斯 ...
- mssql修改id
alter table image alter column id int IDENTITY (1, 1) NOT NULL 我只能上查询分析器,所以只 ...