2009-03-22 15:58:29 +08:00
|
|
|
from django.http import HttpResponse
|
2015-01-28 20:35:27 +08:00
|
|
|
from django.views.decorators.http import condition, etag, last_modified
|
2009-03-22 15:58:29 +08:00
|
|
|
|
2015-01-28 20:35:27 +08:00
|
|
|
from .tests import ETAG, FULL_RESPONSE, LAST_MODIFIED
|
2011-10-14 02:51:33 +08:00
|
|
|
|
2009-03-22 15:58:29 +08:00
|
|
|
|
2016-09-10 20:23:53 +08:00
|
|
|
@condition(lambda r: ETAG, lambda r: LAST_MODIFIED)
|
2009-03-22 15:58:29 +08:00
|
|
|
def index(request):
|
|
|
|
return HttpResponse(FULL_RESPONSE)
|
|
|
|
|
2013-11-03 12:36:09 +08:00
|
|
|
|
2016-09-10 20:23:53 +08:00
|
|
|
@condition(last_modified_func=lambda r: LAST_MODIFIED)
|
2009-03-24 11:01:46 +08:00
|
|
|
def last_modified_view1(request):
|
2009-03-22 15:58:29 +08:00
|
|
|
return HttpResponse(FULL_RESPONSE)
|
|
|
|
|
2013-11-03 12:36:09 +08:00
|
|
|
|
2016-09-10 20:23:53 +08:00
|
|
|
@last_modified(lambda r: LAST_MODIFIED)
|
2009-03-24 11:01:46 +08:00
|
|
|
def last_modified_view2(request):
|
2009-03-22 15:58:29 +08:00
|
|
|
return HttpResponse(FULL_RESPONSE)
|
2009-03-24 11:01:46 +08:00
|
|
|
|
2013-11-03 12:36:09 +08:00
|
|
|
|
2016-09-10 20:23:53 +08:00
|
|
|
@condition(etag_func=lambda r: ETAG)
|
2009-03-24 11:01:46 +08:00
|
|
|
def etag_view1(request):
|
|
|
|
return HttpResponse(FULL_RESPONSE)
|
|
|
|
|
2013-11-03 12:36:09 +08:00
|
|
|
|
2016-09-10 20:23:53 +08:00
|
|
|
@etag(lambda r: ETAG)
|
2009-03-24 11:01:46 +08:00
|
|
|
def etag_view2(request):
|
|
|
|
return HttpResponse(FULL_RESPONSE)
|
2016-09-01 21:32:20 +08:00
|
|
|
|
|
|
|
|
|
|
|
@condition(etag_func=lambda r: ETAG.strip('"'))
|
|
|
|
def etag_view_unquoted(request):
|
|
|
|
"""
|
|
|
|
Use an etag_func() that returns an unquoted ETag.
|
|
|
|
"""
|
|
|
|
return HttpResponse(FULL_RESPONSE)
|
|
|
|
|
|
|
|
|
|
|
|
@condition(etag_func=lambda r: None)
|
|
|
|
def etag_view_none(request):
|
|
|
|
"""
|
|
|
|
Use an etag_func() that returns None, as opposed to setting etag_func=None.
|
|
|
|
"""
|
|
|
|
return HttpResponse(FULL_RESPONSE)
|