如何在对django-piston调用的响应中包含HTTP标头,如Cache-Control或Last-Modified?
发布于 2010-07-06 22:39:11
您可以按照Django文档中specifying per view cache in urlconf指南中的步骤将其包装在urls.py中。在我的例子中,我将我的Piston API放在一个单独的模块中,并且更喜欢使用Varnish而不是内置的Django缓存框架,所以我在我的api/urls.py (我的主urls.py包含)中使用了这种方法来设置我想要的缓存控制头:
from django.views.decorators.cache import cache_control
cached_resource = cache_control(public=True, maxage=30, s_maxage=300)
urlpatterns = patterns('',
url(r'^myresource/$', cached_resource(Resource(MyHandler))),
)发布于 2010-04-01 06:48:38
不确定django-piston,但在django中你可以直接去:
from django.http import HttpResponse
response = HttpResponse('My content')
response['MyHttpHeader'] = 'MyHeaderValue'因此,在您可以访问响应的地方执行此操作。如果您使用的是第三方应用程序,那么中间件通常是执行此操作的最佳位置。您的中间件可能如下所示:
def process_response(self, request, response):
response['MyHttpHeader'] = 'MyHeaderValue'
return responsehttps://stackoverflow.com/questions/2540640
复制相似问题