mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-07-29 17:39:48 +03:00
Check use_etags
before trying to set ETag header
This commit is contained in:
parent
a337dc3b5f
commit
61f6fe2b81
|
@ -101,10 +101,11 @@ class RetrieveModelMixin(object):
|
||||||
queryset = self.get_queryset()
|
queryset = self.get_queryset()
|
||||||
filtered_queryset = self.filter_queryset(queryset)
|
filtered_queryset = self.filter_queryset(queryset)
|
||||||
self.object = self.get_object(filtered_queryset)
|
self.object = self.get_object(filtered_queryset)
|
||||||
if self.use_etags:
|
headers = {}
|
||||||
|
if getattr(self, 'use_etags', False):
|
||||||
if self.get_etag(self.object) == request.META.get('HTTP_IF_NONE_MATCH'):
|
if self.get_etag(self.object) == request.META.get('HTTP_IF_NONE_MATCH'):
|
||||||
return Response(status=304)
|
return Response(status=304)
|
||||||
headers = {'ETag': self.get_etag(self.object)}
|
headers.update({'ETag': self.get_etag(self.object)})
|
||||||
serializer = self.get_serializer(self.object)
|
serializer = self.get_serializer(self.object)
|
||||||
return Response(serializer.data, headers=headers)
|
return Response(serializer.data, headers=headers)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user