最浅显易懂的Django系列教程(29)-httpresponse对象

Web框架开发-Django的视图层 一个视图函数,简称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应。响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. . . 是任何东西都可以。为了将代码放在某处,约定是将视图放置在项目或应用程序目录中的名为views.py的文件中。除了特殊说明的之外,其他均为只读的。如果字典中的某个值是可调用的,视图将在渲染模板之前调用它。render方法就是一个模板页面中的模板语法进行渲染,最终渲染成一个HTML页面作为响应体。 阅读详情

HttpResponse对象

Django服务器接收到客户端发送过来的请求后,会将提交上来的这些数据封装成一个HttpRequest对象传给视图函数。那么视图函数在处理完相关的逻辑后,也需要返回一个响应给浏览器。而这个响应,我们必须返回HttpResponseBase或者他的子类的对象。而HttpResponse则是HttpResponseBase用得最多的子类。那么接下来就来介绍一下HttpResponse及其子类。

常用属性:

  1. content:返回的内容。
  2. status_code:返回的HTTP响应状态码。
  3. content_type:返回的数据的MIME类型,默认为text/html。浏览器会根据这个属性,来显示数据。如果是text/html,那么就会解析这个字符串,如果text/plain,那么就会显示一个纯文本。常用的Content-Type如下:
    • text/html(默认的,html文件)
    • text/plain(纯文本)
    • text/css(css文件)
    • text/javascript(js文件)
    • multipart/form-data(文件提交)
    • application/json(json传输)
    • application/xml(xml文件)
  4. 设置请求头:response['X-Access-Token'] = 'xxxx'。

常用方法:

  1. set_cookie:用来设置cookie信息。后面讲到授权的时候会着重讲到。
  2. delete_cookie:用来删除cookie信息。
  3. write:HttpResponse是一个类似于文件的对象,可以用来写入数据到数据体(content)中。

JsonResponse类:

用来对象dump成json字符串,然后返回将json字符串封装成Response对象返回给浏览器。并且他的Content-Type是application/json。示例代码如下:

from django.http import JsonResponse
def index(request):
    return JsonResponse({"username":"zhiliao","age":18})

默认情况下JsonResponse只能对字典进行dump,如果想要对非字典的数据进行dump,那么需要给JsonResponse传递一个safe=False参数。示例代码如下:

from django.http import JsonResponse
def index(request):
    persons = ['张三','李四','王五']
    return HttpResponse(persons)

以上代码会报错,应该在使用HttpResponse的时候,传入一个safe=False参数,示例代码如下:

return HttpResponse(persons,safe=False)

看文章不过瘾?还有免费的视频教程,让你学起来更轻松:Django零基础到项目实战

django实现HttpResponse返回json数据为中文 Python3读取写入json的中文乱码问题 之前我用django一般用JsonResponse来返回json数据格式 但是发现返回中文的时候会乱码 from django.http import JsonResponse def test(request): result = {result: 0, msg: 执行成功} return return JsonResponse(result) 这种方式返回简单,但是中文会乱码 现在改成用HttpResponse来返回,显示中文成功 from django.http import HttpResponse import jso 立即下载

相关推荐

从请求到响应过程中django都做了哪些处理

前言 最近面试的时候,被面试官问道一个问题,就是 request.user 里面的 user 是怎样得到的,这个问题当时没有回答上来,可以说是非常的尴尬,所以赶快查了一些资料,看了一些源码,特地来总结一下这个问题。 要想回答为什么可以直接通过 request.user 得到请求的用户,应该先来看看请求被处理以及如何返回响应的流程。今天先总结一下 django 从请求到响应都进行了哪些过程。 WSGI 当客户端发送一次请求后,最先处理请求的实际上是 web 服务器就是我们经常说的 nginx、Apache 这类的 web 服务器,而 WSGI 的作用就是把 web 服务器和 web 框架

Django框架基础篇--响应HttpResponse相关知识点

关于响应HttpResponse知识小天窗: 学习响应Response的目的:视图请求处理后 -->> 必使用 HttpResponse对象或者子对象返回数据 常见的响应 HttpResponse 四种方式:(接下来我们将从 4 个不同的方式进行分析) 1. HttpResponse(): 响应 多种数据类型 2. JsonResponse(): 响应 JSON数据 3. redirect(): 重定向 4. render(): 渲染病响应HTML模板 提示一下: ...

Mr.lin的博客 3077

基于Java+SpringBoot+Vue的中小企业设备管理系统的设计与开发(源码+lw+部署文档+讲解等)

💗博主介绍:✌新人博主,工作经验两年+、专注于Java、小程序技术领域和毕业项目实战✌💗🌟文末获取源码+数据库🌟

2301_76502068的博客 1382

Django16——HttpResponse对象

文章目录1、HttpResponse对象2、重定向——子类HttpResponseRedirect3、简写函数render重定向得到对象或返回404得到列表或返回404 1、HttpResponse对象 在django.http模块中定义了HttpResponse对象的API HttpRequest对象由Django自动创建,HttpResponse对象由程序员创建 不调用模板,直接返回数据 from django.http import HttpResponse def index(request):

Blog of Lytracy 1603

3D缺陷检测实战:从点云处理到工业质检优化

本文深入探讨了3D缺陷检测在工业质检中的实战应用,详细阐述了从点云处理到深度学习模型部署的完整技术链路。文章通过PCB焊点检测等实际案例,分析了3D视觉相比2D检测在识别深度、形状等缺陷方面的优势,并分享了点云滤波、分割、特征提取以及利用YOLOv5等模型进行高效检测的优化心得与落地挑战。

weixin_28358083的博客 337

UOS的ARM机编译QT5.14.2记录

我需要的qt版本是Qt5.14.2,所以选择编译Qt5.14.2源码;几个月前尝试了编译一次,当时编译过程中出现了报错,当时时间很紧最后安装的默认版本来使用,最近有时间重新进行了一次编译,历经3个星期(4G的内存)终于解决了各种坑,编译成功了,现在将编译过程中遇见的一些坑记录一下,方便日后能记得这一次可恶的编译过程,如有描述欠缺的地方,还希望各位大佬给点意见指导指导🙏。

NiF693zzz的博客 1617

Django---- HttpResponse响应、render 响应、redirect 响应、JsonResponse 响应

一、HttpResponse 响应对象--属性及方法介绍;二、render 响应对象的使用;三、redirect 响应对象的使用;四、JsonResponse;

weixin_43988680的博客 2822

嵌入式开发:用状态机实现STM32按键消抖,告别阻塞延时

在嵌入式系统开发中,处理异步事件和实时响应是核心挑战。状态机作为一种强大的编程模型,通过定义有限的状态、事件和状态转换规则,将复杂的、非线性的控制逻辑转化为清晰、确定且易于维护的代码结构。其技术价值在于实现逻辑的模块化、异步化和非阻塞化,能显著提升代码的可读性、可扩展性和系统实时性。这一思想广泛应用于协议解析、用户界面交互、传感器数据处理等场景。本文以嵌入式开发中基础的按键处理为例,针对传统“延时消抖”方法会阻塞主循环、影响实时性的痛点,深入讲解如何运用状态机思维重构按键消抖逻辑。通过分析状态机的核心三要素

weixin_33377602的博客 339

Django-- HttpResponse

django的视图函数都要返回一个httpresponse对象,httpresponse存在于django.http模块中 1.将页面的内容当做一个string,传到httpresponse >>>from django.http import HttpResponse >>>response = HttpResponse('this is a test') >>>response = Htt

python_tty的专栏 1224

TortoiseSVN的安装与使用

TortoiseSVN的安装与应用1、安装1.1、下载TortoiseSVN    点击下载TortoiseSvn1.2、下载汉化包。上面的页面中,找到Chinese, simplified汉化包,点击32位或者64位的Setup,下载汉化包。1.3、安装TortoiseSVN。在选择安装路径页面时要记得勾选“command line client tools”,默认不是勾选的。这里不勾选的话在I...

qq_28566071的博客 4万+

BGE-M3 文本情感分类实战:预训练模型微调,导出ONNX并测试

本文介绍了如何基于BGE-M3开源模型实现一个简单的二分类情感分析任务,展示了NLP中经典的“预训练 + 微调”范式。首先,加载预训练模型和分词器,并构建分类头整合到模型中。接着,进行数据预处理并构建DataLoader。然后,定义优化器、损失函数和训练循环,进行模型微调。微调过程中,可以选择基于[CLS] token的单特征提取或基于池化策略的多特征融合。最后,通过验证与推理评估模型性能,并导出ONNX模型以适应生产环境。BGE-M3在语义表征任务中表现优异,适合作为文本分类、语义搜索等下游任务的基础模型

大鹏的专栏 1403

Django之HttpRequest与HttpResponse

Django不会自动设置下面这些属性,而是由你自己在应用程序中设置并使用它们。表示当前app的名字。url模板标签将使用其值作为reverse()方法的current_app参数。设置当前请求的根URLconf,用于指定不同的url路由进入口,这将覆盖settings中的ROOT_URLCONF设置。将它的值修改为None,可以恢复使用ROOT_URLCONF设置。

m0_62155641的博客 726

YOLOv13安装教程 手把手教你融合空间注意力机制(SAB)的RAB卷积模块 自动“聚焦”重要的特征 map指标提升8.96,准确率提升3.56

本文提出了一种改进的YOLOv13目标检测模型,通过引入RAB(残差注意力模块)显著提升了检测性能。实验结果显示,添加RAB模块后,mAP指标提升了8.96,准确率提高了3.56%。文章详细介绍了RAB模块的实现方法:1)采用多级残差连接增强特征提取能力;2)结合空间注意力机制(SAB)自动聚焦关键区域;3)通过1×1卷积实现通道维度压缩与恢复。同时提供了完整的模型移植方案,包括配置文件修改、任务处理代码调整以及模块实现细节,为YOLO系列模型的性能优化提供了有效参考。

FJN110的博客 646

django jsonresponse_0基础掌握Django框架(29)HttpResponse对象

为了更好的学习效果,请搭配视频教程一起学习:Django零基础到项目实战 - 网易云课堂​study.163.comHttpResponse对象Django服务器接收到客户端发送过来的请求后,会将提交上来的这些数据封装成一个HttpRequest对象传给视图函数。那么视图函数在处理完相关的逻辑后,也需要返回一个响应给浏览器。而这个响应,我们必须返回HttpResponseBase或者他的子类的对象...

weixin_39586335的博客 136

【数字孪生工业应用实战】第2篇:数字孪生系统架构设计与技术选型——从“作秀”到“实干”的骨架构建

本文系统剖析了数字孪生系统从“作秀”到“实干”的架构设计关键。针对多数项目在POC转生产时因架构混乱、选型盲目而失败的问题,深入阐述了四层分层架构(感知层、传输层、模型层、应用层)的设计原则,重点解析了感知层的异构适配与边缘预处理、传输层的异步解耦与多模式通信等工程细节。结合OPC UA、MQTT、EdgeX Foundry等主流技术选型对比,以及汽车焊装车间边缘智能网关的实战代码,提供了从零搭建微型孪生系统的完整指导。旨在帮助工程师建立清晰的选型决策逻辑,构建稳定、可演进的数字孪生“骨架”。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 265

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

java 参数对象一起封装成json_0基础掌握Django框架(29)HttpResponse对象

为了更好的学习效果,请搭配视频教程一起学习:Django零基础到项目实战 - 网易云课堂​study.163.comHttpResponse对象Django服务器接收到客户端发送过来的请求后,会将提交上来的这些数据封装成一个HttpRequest对象传给视图函数。那么视图函数在处理完相关的逻辑后,也需要返回一个响应给浏览器。而这个响应,我们必须返回HttpResponseBase或者他的子类的对象...

weixin_34023576的博客 113

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

python视频笔记29(Django 视图篇)

URl配置 视图函数 HttpRequest对象属性 PATH 请求的完整路径 不包括域名和端口 METHOD 表示请求的方式 常用的方式有 GET POST ENCODING 表示浏览器提交的数据的编码方式 一般为UTF-8 GET 类似于字典的对象,包含了get请求的所有参数 POST 类似于字典的对象,包含了post请求的所有参数 FILES 类似于字典的对象,包含了所有上传...

qq_43377292的博客 134

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

06 django视图层

视图层   视图就是一个函数,请求过来后要做什么事情都在这个函数里,也就是具体处理请求的功能。   熟练掌握两个视图层对象:请求对象(request)和响应对象(HttpResponse)。 HttpRequest对象 1 from django.shortcuts import render,redirect,HttpResponse 2 from views_app01.to...

weixin_30747253的博客 115

Django---URL、Views

1、Django URL(路由系统) URL配置(URLconf)就像Django 所支撑网站的目录。它的本质是URL模式以及要为该URL模式调用的视图函数之间的映射表;你就是以这种方式告诉...

setsunadoudou的博客 134

django视图

限制请求: from django.views.decorators.http import require_http_methods, require_POST, require_GET, require_safe 限制只有post,get请求可以访问index视图函数 @require_http_methods([''POST, 'GET']) def index(request): ...

qq_39431562的博客 236

Django-4 视图层

视图函数   一个视图函数,简称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应。响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. . . 是任何东西都可以。无论视图本身包含什么逻辑,都要返回响应。代码写在哪里也无所谓,只要它在你的Python目录下面。除此之外没有更多的要求了——可以说“没有什么神奇的地方”。为了将代码放在某处...

weixin_30822451的博客 98

Django9-1.请求与响应常用知识点

Django——请求与响应 文章目录Django——请求与响应一、请求和响应流程二、HttpRequest对象1.属性2. debug查看3. Form中的get和post3-1 get3-2 post4. getlist()5. request中的get和post5-1 GET5-2 POST5-3 升级登录函数6. 总结三、HttpResponse对象1. 常用子类2. cookie3. 小实验:使用cookie记录第几次访问 一、请求和响应流程 浏览器输入网址 经过TCP/IP协议创建连接 请求页面

胖大xian 235

Django单元测试实战:从模型到视图的可信赖验证体系

Django单元测试是保障Web应用稳定性的核心工程实践,其本质是通过TestCase构建隔离的数据库沙箱与HTTP客户端模拟环境,实现对模型约束、视图逻辑、表单验证及权限控制的自动化验证。它依托事务级测试数据库确保数据纯净性,利用self.client实现毫秒级请求模拟,并通过setUpTestData与setUp分层管理测试数据生命周期。在电商、积分系统等业务场景中,覆盖字段校验、关联级联、折扣计算、订单状态流转等关键路径,能显著降低线上故障率。本文聚焦Django TestCase底层契约与可落地的测

weixin_33826609的博客 347

Ubuntu 18.04 安装 Django 的正确姿势:虚拟环境+pip升级+避坑指南

Django 是 Python 生态中主流的全栈 Web 框架,其安装过程远不止执行 pip install 命令那么简单。在 Linux 系统(尤其是 Ubuntu 18.04 这类长期支持但已停止维护的发行版)上,Python 版本(3.6.9)、系统包管理(apt)与用户级工具(pip)的耦合关系,决定了必须通过虚拟环境(venv)实现开发隔离。原理上,venv 利用符号链接和独立 site-packages 构建沙盒,避免污染系统 Python;技术价值在于保障 apt 升级安全、项目可复现、团队环

weixin_30566111的博客 341

(课程设计)python房屋租赁管理系统 毕业设计 附源码745613

租客模块: 账号注册。 账号登录认证。 管理个人资料信息,修改可修改的信息项。 房屋租赁,同时查看历史已租赁的记录。 房屋信息,同时查看历史房屋信息浏览的记录。 预约看房,填写预约信息提交系统等待房东审核。 房屋租赁,具体房屋信息,申请租赁提交等系统审核。 退房登记,填写退房原因,提交申请信息。 房东模块: 房屋信息发布,具体发布自己房屋的信息。 预约看房处理,处理租客提交的预约申请。 租赁合同,合同细则等。 退房登记,查看租客的退房信息等。 管理员模块: 对用户留下的评论数据进行维护,删除违规评论。 对用

ID3461074420的博客 7299
上一篇: 最浅显易懂的Django系列教程(28)-httprequest对象
下一篇: 最浅显易懂的Django系列教程(30)-生成CSV文件
jspython
博客等级 码龄7年 61粉丝 109原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值