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中,因为继承链是 ...
随机推荐
- 基于ASP.NET Core 创建 Web API
使用 Visual Studio 创建项目. 文件->新建->项目,选择创建 ASP.NET Core Web 应用程序. 基于 ASP.NET Core 2.0 ,选择API,身份验证选 ...
- CSS浮动的3个特性(高手绕行)
1. 浮动元素会脱离正常的文档流,按照其外边距指定的位置相对于它的上一个块级元素(或父元素)显示: 代码示例: <!DOCTYPE HTML > <html> <hea ...
- protobuf简单测试应用
protobuf是google推出的一种数据交换协议,比较适合应用于底层服务交互,nodejs提供protobufjs包的实现,下面是一个简单的测试demo: 首先是.proto文件: package ...
- nodejs简易代理服务器
直接代码: var http = require('http') var proxy = http.createServer(function (request, response) { var op ...
- 一、Java多线程基础
一.简介 1.操作系统 在早起的裸机时代,计算机非常地昂贵,而且也没有操作系统的概念,计算机从头到尾只能执行一个程序.如果程序在执行一个耗时的操作,那么在这个过程中,计算机就有大量的资源闲置在那里,这 ...
- java自学-流程控制语句
一件事情从开始到结束,需要先做什么,再做什么,最后再怎么做,这段过程就是一个流程.程序逻辑处理也是一个流程,java中有专门的流程控制语句,主要分为这几种:顺序,判断,选择,循环. 1.顺序流程 顺 ...
- 撩课-Java每天5道面试题第12天
91.如何提升数据查询的效率? 1.首先检查表的结构是否合理, 因为采用多表查询的时候, 看主外键的引用关系是否适当. 如果不适当则重新设置表结构. 如果是应用中的系统, 则不需要更改表的字段, 只更 ...
- 微信小程序二维码识别
目前市场上二维码识别的软件或者网站越来越多,可是真正方便,无广告的却少之很少. 于是,自己突发奇想做了一个微信二维码识别的小程序. 包含功能: 1.识别二维码 ①普通二维码 ②条形码 ③只是复制解析出 ...
- 以面向对象的思想实现数据表的添加和查询,JDBC代码超详细
以面向对象的思想编写JDBC程序,实现使用java程序向数据表中添加学生信息,并且可以实现给定身份证号查询学生信息或给定准考证号查询学生信息. 创建的数据表如下: CREATE TABLE EXAMS ...
- spss C# 二次开发 学习笔记(一)——配置数据源
由于项目的需要,使用Spss进行数据统计分析. Spss对于数据统计分析的功能有多强主要是客户关注的事情,我所主要关注的是,Spss的二次开发有多复杂. 学习的基本思路是: (1)首先了解统计基本知识 ...