ETag must be between double quotes per spec

This commit is contained in:
Yohan Boniface 2023-02-23 11:10:44 +01:00
parent cf149bc450
commit bdafdf23e1

View file

@ -700,7 +700,7 @@ class GZipMixin(object):
def etag(self):
path = self.path()
with open(path, mode='rb') as f:
return hashlib.md5(f.read()).hexdigest()
return '"%s"' % hashlib.md5(f.read()).hexdigest()
class DataLayerView(GZipMixin, BaseDetailView):
@ -724,7 +724,7 @@ class DataLayerView(GZipMixin, BaseDetailView):
content_type="application/json"
)
response["Last-Modified"] = http_date(statobj.st_mtime)
response['ETag'] = '%s' % hashlib.md5(force_bytes(response.content)).hexdigest() # noqa
response['ETag'] = '"%s"' % hashlib.md5(force_bytes(response.content)).hexdigest() # noqa
response['Content-Length'] = len(response.content)
if path.endswith(self.EXT):
response['Content-Encoding'] = 'gzip'