Django服务器接收到客户端发送过来的请求后,会将提交上来的这些数据封装成一个HttpRequest
对象传给视图函数。那么视图函数在处理完相关的逻辑后,也需要返回一个响应给浏览器。而这个响应,我们必须返回HttpResponseBase
或者他的子类的对象。而HttpResponse
则是HttpResponseBase
用得最多的子类。那么接下来就来介绍一下HttpResponse
及其子类。
常用属性
content
:返回的内容。也是HttpResponse
构造的第一个参数status_code
:返回的HTTP响应状态码。content_type
:返回的数据的MIME类型,默认为text/html
。浏览器会根据这个属性,来显示数据。如果是text/html
,那么就会解析这个字符串,如果text/plain
,那么就会显示一个纯文本。def index(request):
response = HttpResponse("嘤嘤嘤", content_type='text/plain;charset=utf-8') #解决乱码需要挺假charset字段,注意有;分号
return response
常用的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'
。可以用request.META.get('X-Access-Token')
获得
常用方法
set_cookie()
:用来设置cookie
信息。delete_cookie()
:用来删除cookie
信息。write()
:HttpResponse
是一个类似于文件的对象,可以用来写入数据到数据体(属性content
)中。