diff --git a/services/blob/src/AwsS3Bucket.cpp b/services/blob/src/AwsS3Bucket.cpp
--- a/services/blob/src/AwsS3Bucket.cpp
+++ b/services/blob/src/AwsS3Bucket.cpp
@@ -117,9 +117,10 @@
 
   Aws::IOStream &retrievedFile = outcome.GetResultWithOwnership().GetBody();
 
-  std::string result;
-  result.resize(size);
-  retrievedFile.get((char *)result.data(), size + 1);
+  std::stringstream buffer;
+  buffer << retrievedFile.rdbuf();
+  std::string result(buffer.str());
+  std::string cpy = result;
 
   return result;
 }
@@ -152,9 +153,11 @@
 
     Aws::IOStream &retrievedFile =
         getOutcome.GetResultWithOwnership().GetBody();
-    std::string result;
+
+    std::stringstream buffer;
+    buffer << retrievedFile.rdbuf();
+    std::string result(buffer.str());
     result.resize(nextSize);
-    retrievedFile.get((char *)result.data(), nextSize + 1);
     callback(result);
   }
 }
diff --git a/services/blob/src/Reactors/server/GetReactor.h b/services/blob/src/Reactors/server/GetReactor.h
--- a/services/blob/src/Reactors/server/GetReactor.h
+++ b/services/blob/src/Reactors/server/GetReactor.h
@@ -50,9 +50,10 @@
 
     Aws::IOStream &retrievedFile =
         getOutcome.GetResultWithOwnership().GetBody();
-    std::string result;
-    result.resize(nextSize);
-    retrievedFile.get((char *)result.data(), nextSize + 1);
+
+    std::stringstream buffer;
+    buffer << retrievedFile.rdbuf();
+    std::string result(buffer.str());
     response->set_datachunk(result);
 
     this->offset += nextSize;