2016-07-07 5 views
1

Я пытаюсь загрузить несколько больших видеофайлов из облачного хранилища Google (размер 30 МБ - 1 ГБ). В настоящее время я последовательно загружаю XMLHttpRequest, как показано ниже, и сохраняю в локальной памяти с помощью API FileSystem.Как выполнять параллельные загрузки видео с использованием XMLHttpRequest в javascript? Есть ли какое-нибудь решение сделать кусок куском?

var xhr = new XMLHttpRequest(); 
xhr.open('GET', Url, true); // url is my google cloud storage url 
xhr.responseType = 'blob'; 
xhr.onload = function (e) { 
    blob = xhr.response; 
}; 
xhr.send(); 

Я использую блоб для хранения видео files.As это пятно, оно будет храниться в оперативной памяти, и мы не можем сделать параллельную загрузку в этом way.Is там какой-нибудь способ, чтобы загрузить видео кусок на кусок или любые другие альтернативы, так как я также обнаружил, что blob может хранить только до 500Mib

+0

Извлечение и потоки: https://jakearchibald.com/2016/streams-ftw/#streams-the-fetch-api, https://jakearchibald.com/2015/thats-so-fetch/#streams –

ответ

2

Добавить заголовок диапазона в XMLHTTPRequest, используя setRequestHeader, чтобы получить смещения файлов. HTTP Range docs. Вы можете использовать FileWriter и .seek для записи с соответствующими смещениями.