Django:如何以方便的方式将http标头添加到响应中?

时间:2016-01-02 08:38:22

标签: python django http web

我知道我们可以使用HttpResponseInstance['headername'] = 'headervalue'向http响应添加标头。但是通过这种方式,我必须重写我正在使用的所有通用视图,这样可以做更多工作。

是否有方便的方法为响应添加标头,例如回复回调或网址装饰器?

3 个答案:

答案 0 :(得分:6)

您可以编写middleware课程并实施方法process_response

答案 1 :(得分:1)

您应该使用中间件类。 Check out this thread.

应实施Django 1.10及更高版本__init____call__process_response已过时。

答案 2 :(得分:0)

返回JsonResponse时添加一些自定义标头。

from django.http import JsonResponse

data = {'key','value'} # some data

response = JsonResponse(data,status=200)

response['Retry-after'] = 345 # seconds 
response['custom-header'] = 'some value'

return response