Браузеры не инициируют запросы диапазона для больших файлов
Я хочу обслуживать большие файлы (>1 ГБ) через HTTPS. Я пытаюсь использовать для этого заголовки диапазона, чтобы, когда клиент (браузер) запрашивает диапазон байтов, он будет обслуживаться сервером. Я также установил максимальный предел диапазона, то есть 1 МБ.
Проблема в том, что браузеры (проверенные в Chrome, Firefox) не инициируют запрос диапазона. Код выглядит примерно так:
@app.get("/download/<file_id>")
def download(file_id):
...
# some logic
...
return file_download_in_ranges(file_location, download=True)
Функция
file_download_in_ranges
проверяет, есть ли в заголовках
Content-Range
заголовок, если да, он возвращает фрагмент данных из файла в указанном диапазоне. Я пробовал использовать тот же API для видеоплеера HTML5, который работал нормально. Но когда я создаю ссылку привязки с тем же API, браузер не запускает цикл запроса диапазона. Запросы диапазона работают только для встроенных в браузер аудио / видео плееров?
Заранее благодарим за предложения!