django的response-8
视图函数在处理请求后,必须返回一个 HttpResponse 对象,或者 HttpResponse对象的子对象。
1. HttpResponse
可以通过 django.http.HttpResponse 来构造响应对象,并设置 响应头,响应体,响应体类型,状态码等。
HttpResponse(content=响应体, content_type=响应体类型, status=状态码)
响应体,状态码等也可以单独设置
response = HttpResponse()
response.content = "响应体"
response.status_code = 200
响应头可以把 HttpResponse 对象当做字典来进行设置。
response = HttpResponse()
response[响应头key] = 响应头值
示例:
def response_view(request):
response = HttpResponse()
response.content = "响应体"
response.status_code = 200
response['name'] = 'xuanli'
return response
响应结果
Body:响应体
Headers:name →xuanli
def response_view2(request):
return HttpResponse(content="响应体", status=200)
响应结果
Body:响应体
2. HttpResponse的子类
Django提供了一系列HttpResponse的子类,可以快速设置状态码
HttpResponseRedirect 301
HttpResponsePermanentRedirect 302
HttpResponseNotModified 304
HttpResponseBadRequest 400
HttpResponseNotFound 404
HttpResponseForbidden 403
HttpResponseNotAllowed 405
HttpResponseGone 410
HttpResponseServerError 500
3. JsonResponse
可以使用 JsonResponse 来快速构造json类型的响应对象,它可以帮助我们把数据转换为json字符串,并把响应头的 Content_type 为 application/json
from django.http import JsonResponse
def resopnse_json(request):
return JsonResponse({"name": "xuanli", "age": "18"})
响应结果
{
"age": "18",
"name": "xuanli"
}
4. 重定向
使用 redirect 重定向
def redirect_view(request):
return redirect('/demo/index')
重定向到 /demo/index
django的response-8的更多相关文章
- django.http.response中HttpResponse 子类
HttpResponse的子类 Django包含许多处理不同类型的HTTP请求的 HttpResponse 子类.像 HttpResponse 一样,这些类在 django.http 中. HttpR ...
- 【转】对Django框架架构和Request/Response处理流程的分析
本文转载于疯狂的蚂蚁. 一. 处理过程的核心概念 如下图所示django的总览图,整体上把握以下django的组成: 核心在于中间件middleware,django所有的请求.返回都由中间件来完成. ...
- 对Django框架架构和Request/Response处理流程的分析(转)
原文:http://blog.sina.com.cn/s/blog_8a18c33d010182ts.html 一. 处理过程的核心概念 如下图所示django的总览图,整体上把握以下django的组 ...
- 对django框架架构和request/response处理流程的分析
一. 处理过程的核心概念 如下图所示django的总览图,整体上把握以下django的组成: 核心在于中间件middleware,django所有的请求.返回都由中间件来完成. 中间件,就是处理HTT ...
- Django中的response
render_to_response render_to_response('index.html', locals(),context_instance=RequestContext(request ...
- python 之 Django框架(Django框架简介、视图装饰器、request对象、Response对象)
12.33 Django框架简介: MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器( ...
- Django笔记-登陆、注册(利用cookie实现)
1.项目结构: 2.关键代码: settings.py INSTALLED_APPS = ( 'django.contrib.admin', 'django.contrib.auth', 'djang ...
- django xadmin 插件(3) 列表视图新增自定义按钮
效果图: 编辑按钮是默认的list_editable属性对应的插件(xadmin.plugins.editable) 放大按钮对应的是自定义插件. 自定义按钮源码: xplugin.py(保证能够直接 ...
- Django Signals 从实践到源码分析(转)
原文:http://foofish.net/blog/66/django-signals 当某个事件发生的时候,signal(信号)允许senders(发送者)用来通知receivers(接收者),通 ...
- django: template using & debug
模板的作用方法有如下三种: blog/views.py: from django.template import loader, Context, Template from django.http ...
随机推荐
- 微软操作系统 Windows Server 2012 R2 官方原版镜像
微软操作系统 Windows Server 2012 R2 官方原版镜像 Windows Server 2012 R2 是由微软公司(Microsoft)设计开发的新一代的服务器专属操作系统,其核心版 ...
- C++默认值。
类成员变量: char :� //随机int :2685372 //随机string :size:0length:0 vector :0map :0 结构体 //取决于成员自己的类型 类成员静态变量: ...
- .NET控件命名规范
一.基本数据类型前缀 数据类型 数据类型简写 Array arr Boolean bln Byte byt Char chr DateTime dtm Decima ...
- 记一次挖掘115网盘反射型xss,08xss的储存型xss
记一次对115分站简单绕过过滤继续实现xss,08xss平台也中枪!! 115反射型xss url:http://115.qiye.115.com/disk/?ac=select_public_fil ...
- phonegap 捕获图片,音频,视屏 api capture
一. capture Api 简单介绍 capture 对象用于获取视屏,音频和图像,它是一个全局对象,通过 navigator.device.capture 来访问 方法: capture.capt ...
- 十一.安装Redis
redis是一个NOSql数据库,在java web中,经常用来存储session等,官网是https://redis.io/ 当前官网指出的稳定版本为3.2.6,下载地址为http://downlo ...
- BZOJ1923:[SDOI2010]外星千足虫(高斯消元)
Description Input 第一行是两个正整数 N, M. 接下来 M行,按顺序给出 Charles 这M次使用“点足机”的统计结果.每行 包含一个“01”串和一个数字,用一个空格隔开.“01 ...
- 虚拟机Centos安装docker小记
本书记录是参考 <Spring Cloud 与 Docker 微服务架构实战(第二版)>这本书实现的. 记录简单几个命令,安装顺序如下: 1. 安装docker所需的包 sudo yum ...
- mybatis分页PageHelper插件的使用
1.jar包, 2.改mybatis的配置文件,加上这段配置: <plugins><plugin interceptor="com.github.pagehelper.Pa ...
- C# 文件流FileStream 实现多媒体文件复制 StreamReader StreamWriter 读取写入文本
#region 实现多媒体文件的复制 string source = @"F:\123\source.avi";//源文件路径 string target = @"F:\ ...