Django框架HttpResponse对象用法实例分析
本文实例讲述了Django框架HttpResponse对象用法。分享给大家供大家参考,具体如下:
1.HttpResponse
可通过HttpResponse构造响应对象:
HttpResponse(content=响应体, content_type=响应体数据类型, status=状态码)
响应头可以直接将HttpResponse对象当做字典进行响应头键值对的设置:
response = HttpResponse() response['itcast'] = 'Python' # 自定义响应头Itcast, 值为Python
Django提供了一系列HttpResponse的子类,可以快速设置状态码:
HttpResponseRedirect 301 HttpResponsePermanentRedirect 302 HttpResponseNotModified 304 HttpResponseBadRequest 400 HttpResponseNotFound 404 HttpResponseForbidden 403 HttpResponseNotAllowed 405 HttpResponseGone 410 HttpResponseServerError 500
2.JsonResponse
JsonResponse来构造响应对象的作用:
(1)帮助我们将数据转换为json字符串
(2)设置响应头Content-Type为application/json
用法:
return JsonResponse(dict,safe) (safe默认为True,保证可以将对象转为json,如果为非字典对象,则报错,可设置为False传递非字典对象)
例:
def response(request): return JsonResponse({'city': 'beijing', 'subject': 'python'})
3.redirect重定向
return redirect(路径)
4.reverse反解析
reverse可根据路由名称返回路由路径。
用法:
reverse(路由名称)
如果未指明命名空间,路由名称:
namespace:reverse(name)
如果指明命名空间,路由名称:
namespace:reverse(namespace:name)
希望本文所述对大家基于Django框架的Python程序设计有所帮助。
相关推荐
-
Django 中使用流响应处理视频的方法
起步 利用 html5 的 <video> 标签可以播放: <video width="320" height="240" controls> <source src="/static/video/demo.mp4" type="video/mp4"> 您的浏览器不支持Video标签. </video> 但是这样的方式,视频中的进度条无法使用,而且以静态文件方式返回的话,后台的程
-
Django使用HttpResponse返回图片并显示的方法
做了一个关于Django的小案例,想要在网页中显示图片,直接在img标签的src属性写图片的路径是不能显示的,查询资料发现在Django中使用图片这类的资源相当繁琐需要进行一定D的配置,摸索了一会没有整明白,想到了写Java时使用文件流返回图片,于是想到使用该种方式来显示图片. 使用实例如下: views.py def my_image(request,news_id): d = path.dirname(__file__) #parent_path = path.dirname(d) prin
-
Django框架的使用教程路由请求响应的方法
路由 路由可以定义在工程的目录下(看你的需求),也可以定义在各个应用中来保存应用的路由,用主路文件urls中使用include()包含各个应用的子路由的数据 路由的解析顺序 Django接收到请求后,从主路由文件urlpatterns中的路由从上倒下顺序查找,如果有include包含,则进入子应用的urls中的urlpatterns中查找(从上而下) 路由的结尾斜线 Django有/结尾路由,用户不需要加/,就可以直接重定向到/结尾的路径上 路由命名(可以避免不同应用使用相同名字发生冲突) 如:
-
Django 响应数据response的返回源码详解
响应数据的返回 在 WSGIHandler.__call__(self, environ, start_response) 方法调用了 WSGIHandler.get_response() 方法, 由此得到响应数据对象 response. 如今所要做的, 便是将其返回给客户端. 在 Django 源码小剖: 初探 WSGI中, 简要的概括了请求到来时 django 自带服务器的执行关系, 摘抄如下: make_server() 中 WSGIServer 类已经作为服务器类, 负责接收请求, 调用
-
Django使用httpresponse返回用户头像实例代码
本文研究的主要是Django使用httpresponse返回用户头像,下面是相关实例代码. 当请求一个页面时,Django 把请求的 metadata 数据包装成一个 HttpRequest 对象,然后 Django 加载合适的 view 方法,把这个 HttpRequest 对象作为第一个参数传给 view 方法.任何 view 方法都应该返回一个 HttpResponse 对象. 代码示例: def test(request): # 获取当前文件的路径.父路径以及下一层的路径 curr_di
-
django从请求到响应的过程深入讲解
django启动 我们在启动一个django项目的时候,无论你是在命令行执行还是在pycharm直接点击运行,其实都是执行'runserver'的操作,而ruserver是使用django自带的的web server,主要用于开发和调试中,而在正式的环境中,一般会使用nginx+uwsgi模式. 无论是哪种方式,当启动一个项目,都会做2件事: 创建一个WSGIServer类的实例,接受用户的请求. 当一个用户的http请求到达的时,为用户指定一个WSGIHandler,用于处理用户请求与响应,这
-
从请求到响应过程中django都做了哪些处理
前言 最近面试的时候,被面试官问道一个问题,就是 request.user 里面的 user 是怎样得到的,这个问题当时没有回答上来,可以说是非常的尴尬,所以赶快查了一些资料,看了一些源码,特地来总结一下这个问题. 要想回答为什么可以直接通过 request.user 得到请求的用户,应该先来看看请求被处理以及如何返回响应的流程.今天先总结一下 django 从请求到响应都进行了哪些过程. WSGI 当客户端发送一次请求后,最先处理请求的实际上是 web 服务器就是我们经常说的 nginx.Ap
-
在Python的Django框架中用流响应生成CSV文件的教程
在Django里,流式响应StreamingHttpResponse是个好东西,可以快速.节省内存地产生一个大型文件. 目前项目里用于流式响应的一个是Eventsource,用于改善跨系统通讯时用户产生的慢速的感觉.这个不细说了. 还有一个就是生成一个大的csv文件. 当Django进程处于gunicorn或者uwsgi等web容器中时,如果响应超过一定时间没有返回,就会被web容器终止掉,虽然我们可以通过加长web容器的超时时间来绕过这个问题,但是毕竟还是治标不治本.要根本上解决这个问题,Py
-
详解从Django Rest Framework响应中删除空字段
我使用django-rest-framework开发了一个API. 我正在使用ModelSerializer返回模型的数据. models.py class MetaTags(models.Model): title = models.CharField(_('Title'), max_length=255, blank=True, null=True) name = models.CharField(_('Name'), max_length=255, blank=True, null=Tru
-
Django的HttpRequest和HttpResponse对象详解
本文研究的主要是Django的HttpRequest和HttpResponse对象的相关内容,具体如下. 请求一张页面时,Django把请求的metadata数据包装成一个HttpRequest对象,然后Django加载合适的view方法,把这个HttpRequest 对象作为第一个参数传给view方法.任何view方法都应该返回一个HttpResponse对象. 我们在本书中大量使用这两个对象:本附录详细解释HttpRequest和HttpResponse对象. HttpRequest Htt
-
django创建简单的页面响应实例教程
首先 编辑views.py文件 每个响应对应一个函数 函数必须返回一个响应 函数必须存在一个参数 一般约定为request 每个响应函数 对应一个URL from django.shortcuts import render from django.http import HttpResponse # Create your views here. def book(request): return HttpResponse('图书') 配置URL 编辑URLS.py 每个url都以url的形式
-
django rest framework之请求与响应(详解)
前言:在上一篇文章,已经实现了访问指定URL就返回了指定的数据,这也体现了RESTful API的一个理念,每一个URL代表着一个资源.当然我们还知道RESTful API的另一个特性就是,发送不同的请求动作,会返还不同的响应,这篇文章就讲一下django-rest-framework这个工具在这方面给我们带来的便捷操作. 一.Request对象 平时我们在写Django的视图函数的时候,都会带上一个request参数,这样就能处理平时搭建网站时,浏览器访问网页时发出的常规的HttpReques
随机推荐
- 详解vue + vuex + directives实现权限按钮的思路
- 常用的Oracle doc命令(收藏)
- Ruby中执行Linux shell命令的六种方法详解
- 使用批处理删除文件夹时遇到的问题
- Java 多线程优先级实例详解
- java用split分割字符串的一个有趣现象
- Python中optionParser模块的使用方法实例教程
- Smarty模板变量调节器用法分析
- python 写入csv乱码问题解决方法
- Node.js中如何合并两个复杂对象详解
- php读取mysql的简单实例
- java使用poi读取ppt文件和poi读取excel、word示例
- Server.Execute方法执行指定的ASP程序
- jsp SmartUpload 中文乱码问题解决
- Android编程单元测试实例详解(附源码)
- linux下监视进程 崩溃挂掉后自动重启的shell脚本
- 解决MYSQL连接端口被占引入文件路径错误的问题
- jQuery实现淡入淡出的模态框
- javascript 分号总结及详细介绍
- PHP与javascript实现变量交互的示例代码