HttpResponse 对象
Django服务器接收到客户端发送过来的请求后,会将提交上来的这些数据封装成一
个 HttpRequest 对象传给视图函数。那么视图函数在处理完相关的逻辑后,也需要返回一个响应
给浏览器。而这个响应,我们必须返回 HttpResponseBase 或者他的子类的对象。
而 HttpResponse 则是 HttpResponseBase 用得最多的子类。那么接下来就来介绍一
下 HttpResponse 及其子类
1. 常用属性
- content:返回的内容。
- status_code:返回的HTTP响应状态码。
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文件)
设置请求头: response[‘X-Access-Token‘] = ‘xxxx‘ 。
2. 常用方法
- 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不存在则什么也不发生
注意: 注意:设置cookie值以及删除cookie值都是response对象的操作,而获取cookie是从request相应中获得的.