У меня есть требование реализовать веб-сервис, который может выдавать файлы в биты (Background Intelligent Transfer Service).Язык ASP.NET (C #).Проблема, с которой я сталкиваюсь, связана с «диапазоном».
Мой код в настоящее время получает запрос http (с допустимым диапазоном в заголовках http от 0 до 4907), а затем выделяет частьбайтовый массив в объекте ответа.
Вот мой код сервера:
_context.Response.Clear();
_context.Response.AddHeader("Content-Range", "bytes " + lower.ToString() + "-" + upper.ToString() + "//" + view.Content.Length.ToString());
_context.Response.AddHeader("Content-Length", upper.ToString());
_context.Response.AddHeader("Accept-Ranges", "bytes");
_context.Response.ContentType = "application/octet-stream";
_context.Response.BinaryWrite(data);
_context.Response.End();
Что происходит дальше, так это то, что в последующем запросе вообще нет никакого ключа "диапазона" в заголовке ... он как бы запрашиваетвесь файл!Само собой разумеется, ошибки задания битов, утверждающие, что ответ сервера был недействительным.
Я подозреваю, что все зависит от заголовков, которые сервер возвращает в объекте ответа ... Я почти уверен, что яЯ следую протоколу здесь.
Если кто-то может помочь с этим, это будет очень ценно ... в то время как ... Я продолжу поиск!
С уважением