У меня возникла серьезная проблема с чтением данных объекта с Amazon S3. Мой код для чтения определенного диапазона байтов следующий.AWS S3 GetObjectResponse.ResponseStream длина отличается от запрошенной
Если вы проверяете response.contentLength вы обнаружите, что он имеет правильное значение, то есть конец - начало. Однако длина потока ответа меньше, чем я спросил и что он говорит в ContentLength. Я не получу все данные, которые я попросил, и я понятия не имею, почему и какая часть обрезана.
GetObjectRequest request = new GetObjectRequest()
{
BucketName = m_BucketName,
Key = m_FileName,
ByteRangeLong = new Amazon.S3.Model.Tuple<long, long>(start, end)
};
GetObjectResponse response = m_AwsClient.GetObject(request);
using (Stream responseStream = response.ResponseStream)
{
using (StreamReader reader =
new StreamReader(responseStream))
{
strResponse = reader.ReadToEnd();
}
}