Django框架中的HttpResponse和HttpRequest对象的常用属性和方法功能讲解

发布时间:2021-09-08 07:45:38 作者:chen
来源:亿速云 阅读:113

本篇内容介绍了“Django框架中的HttpResponse和HttpRequest对象的常用属性和方法功能讲解”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

目录

HttpRequest对象

在前面你也跟着本博主编写了那么多的视图函数,但是每个视图函数它都会接收一个名为request的参数。
是不是很好奇:视图函数接收到的request到底是个什么对象!!!

Django框架中的HttpResponse和HttpRequest对象的常用属性和方法功能讲解

1.我们可以打印这个request对象

看一下:

<WSGIRequest: GET '/music/test3/'>

我们知道WSGIRequest是一个HTTP请求对象,里面包括了提交的方式和URL路径。

综上可知:

服务器接收到http协议的请求后,会根据报文创建HttpRequest对象

它是一个请求对象:用户信息(提交方式等);浏览器信息(请求头信息等)。
视图函数的第一个参数是HttpRequest对象。
在django.http模块中定义了HttpRequest对象的API

2.我们可以打印观察一下它具备哪些方法

dir(request)

Django框架中的HttpResponse和HttpRequest对象的常用属性和方法功能讲解

常用属性和方法功能讲解:

属性:

方法:

is_ajax():如果请求是通过XMDHttpRequest发起的,则返回True。

HttpResponse对象

很多时候我们在访问网页的时候,网页的开发者为了美观,大多数都是使用JS效果来显示诸如弹窗之类的效果(提醒登录呀/提醒注册呀/该用户名已经注册呀之类的)
那么,使用Django如何实现JS效果呢?

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

HttpResponse对象的属性和方法

属性

content:表示返回的内容,字符串类型;

charset:表示response采用的编码字符集,字符串类型;

status_code:响应的HTTP响应状态码;

content-type:返回的数据的MIME类型,默认为text/html。浏览器会根据这个属性,来显示数据。如果是text/html,那么就会解析这个字符串,如果text/plain,那么就会显示一个纯文本。常用的Content-Type如下:

示例:

response = HttpResponse('<h3>微信公众号【孤寒者】</h2>',content_type='text/plain;charset=utf-8')    
# 注意:一般在使用‘text/plain'时,都会添加‘charset=utf-8',否则是会乱码的。
return response
方法

init:使用页内容实例化HttpResponse对象;

write(content):以文件的方式写;

flush():以文件的方式输出缓存区;

set_cookie(key, value='',max_age=None, expires=None):设置Cookie。

参数讲解:
  ①key,value都是字符串类型;
  ②max_age是一个整数,表示在指定秒数后过期;
  ③expires是一个datetime或timedelta对象,会话将在这个指定的日期/时间过期,注意datetime和timedelta值只有在使用PickleSerializer时才可序列化;
  ④max_age和expires二选一,如果不指定过期时间,则关闭浏览器就失效。

delete_cookie(key):删除指定的key的cookie,如果Key不存在则什么也不发生。

 HttpResponse的子类

返回数据的响应函数
from django.http import JsonResponse
def resp(request):
	return JsonResponse({'ss':'登录成功!'})
	# 帮助用户创建JSON编码的响应;
	# 参数data是字典对象;
	# JsonResponse的默认Content-Type为application/json。

“Django框架中的HttpResponse和HttpRequest对象的常用属性和方法功能讲解”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

推荐阅读:
  1. 面向对象-类与对象的定义和使用(包含init讲解)
  2. Django中HttpResponse与JsonResponse对象如何使用

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

django httpresponse httprequest

上一篇:SpringBatch跳过异常限制和自定义跳过配置SkipPolicy接口的方法

下一篇:css中怎么实现背景定位

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》