diff --git a/glare/api/v1/resource.py b/glare/api/v1/resource.py index 351abb2..18de164 100644 --- a/glare/api/v1/resource.py +++ b/glare/api/v1/resource.py @@ -484,8 +484,8 @@ class ResponseSerializer(api_versioning.VersionedResource, response.headers['Content-MD5'] = meta['md5'] response.headers['X-Openstack-Glare-Content-SHA1'] = meta['sha1'] response.headers['X-Openstack-Glare-Content-SHA256'] = meta['sha256'] - response.headers['Content-Length'] = str(meta['size']) response.app_iter = iter(data) + response.content_length = str(meta['size']) @staticmethod def _serialize_location(response, result): diff --git a/glare/tests/functional/test_sample_artifact.py b/glare/tests/functional/test_sample_artifact.py index 6fe180b..1ac4cf7 100644 --- a/glare/tests/functional/test_sample_artifact.py +++ b/glare/tests/functional/test_sample_artifact.py @@ -17,6 +17,7 @@ import hashlib import uuid from oslo_serialization import jsonutils +import requests from glare.tests.functional import base @@ -777,6 +778,11 @@ class TestBlobs(base.TestArtifact): self.assertEqual(sha1, art['blob']['sha1']) self.assertEqual(sha256, art['blob']['sha256']) + # check that content-length is in response + response = requests.get(self._url(url + '/blob'), + headers=self._headers()) + self.assertEqual('27', response.headers["content-length"]) + blob_data = self.get(url=url + '/blob') self.assertEqual(data, blob_data)