diff --git a/src/caosdb/connection/connection.py b/src/caosdb/connection/connection.py
index fa14b69309e688d6ce84a401fc92ad375ad47d3a..bde67069b6a2d8cf44e922cfdd7879d8ab7d675e 100644
--- a/src/caosdb/connection/connection.py
+++ b/src/caosdb/connection/connection.py
@@ -75,7 +75,12 @@ class _WrappedHTTPResponse(CaosDBHTTPResponse):
         return self.response.status_code
 
     def read(self, size=None):
-        return self.response.raw.read(size)
+        if size=None or size = 0:
+            result = b''
+            for chunk in self.response.iter_content(chunk_size=1024):
+                result = result + chunk
+            return result
+        return self.response.iter_content(size)
 
     def getheader(self, name, default=None):
         return self.response.headers[name] if name in self.response.headers else default