创建响应对象
传入视图的HttpRequest对象是由Django框架自动生成,但视图应当返回的HttpResponse对象, 则是由开发者负责创建的。
最常用的构造方法是传入一段字符串,这将作为响应的正文。响应的默认MIME类型是text/html, 不过,可以使用content_type关键字参数显式地改变MIME类型。例如:
rsp = HttpResponse('<h1>This is just a demo.</h1>')
rsp = HttpResponse('this is plain text',content_type='text/plain')
递进生成
有时我们需要逐步生成响应正文,可以先构造一个空的响应对象,然后使用write(chunk)方法填充:
rsp = HttpResponse()
for i in range(10):
rsp.write('<div>this is line %d</div>' % i)
设置HTTP报文头
HttpResponse对象使用[]操作符来修改响应对象的HTTP报文头。例如:
rsp = HttpResponse(status=201)
rsp['LOCATION'] = '/user/787878/'
设置cookie
使用set_cookie(key,value)方法设置cookie:
rsp = HttpResponse('just a demo')
rps.set_cookie('demoid',random.random())
修改示例代码,
1. 当用户访问首页/时,设置响应的cookie,字段为counter,值为之前值加1
2. 当用户访问/demo/时,设置响应的Content-Type为text/plain