2016-10-03 4 views
0

Довольно новый пользователь Firebase здесь. Я пытаюсь заархивировать WAV-файл из Firebase прямо сейчас, и сейчас я застрял в использовании jszip, чтобы заархивировать файлы из URL-адресов загрузки, которые я вытаскиваю из Firebase. URL-адреса выглядеть следующим образом:Я пытаюсь заархивировать wav-файл из хранилища Firebase, но я получаю две ошибки

https://firebasestorage.googleapis.com/v0/b/instasample-d8eea.appspot.com/o/kick%2F1.wav?alt=media&token=91612541-83e5-4e82-ae1b-b56bc421e36b 

Каждый раз, когда я нажимаю скачать кнопку на своем сайте, эта функция работает. Я успешно получаю URL-адрес загрузки и помещаю его в var urls.

Но я получаю сообщение об ошибке, когда мне не разрешен доступ к этому файлу и недопустимая ошибка состояния. Это меня озадачивает, потому что я могу вручную перейти к ссылке и right click ->save target as просто отлично.

Благодарим вас за любые предложения, идите легко на меня. Я новичок в jszip и Firebase. Это мой код:

function download(downloadType) { 
     //alert(downloadType) 
     var storageRef = firebase.storage().ref(downloadType + "/" + "1.wav"); //file name 
     //todo: get 16 random file links, use for loop for thing below 
     storageRef.getDownloadURL().then(function(url) { 
      var downloadLink = url; //download link 

      //////////////////////// do download stuff here //////////////////////// 
      var zip = new JSZip(); 
      var count = 0; 
      var zipFilename = "zipFilename.zip"; 
      var urls = [ 
      downloadLink 
      ]; 

      urls.forEach(function(url){ 
      var filename = "filename"; 
      // loading a file and add it in a zip file 
      JSZipUtils.getBinaryContent(url, function (err, data) { 
       if(err) { 
        throw err; // or handle the error 
       } 
       zip.file(filename, data, {binary:true}); 
       count++; 
       if (count == urls.length) { 
       var zipFile = zip.generate({type: "blob"}); 
       saveAs(zipFile, zipFilename); 
       } 
      }); 
      }); 

Error message when I press download

+0

Вы проверяете это на локальном хосте? – mjr

+0

@mjr да я. Это повлияет на что-нибудь? –

+1

Не уверен, что это полная проблема, но вы нажмете: http://stackoverflow.com/questions/37760695/firebase-storage-and-access-control-allow-origin –

ответ

0

благодаря @MikeMcDonald я установил оба этих ошибок с помощью этого поста: Firebase Storage and Access-Control-Allow-Origin

Сейчас я получаю:

Uncaught Error: This method has been removed in JSZip 3.0, please check the upgrade guide.

Похоже Наконец я могу двигаться дальше. Благодаря!

Смежные вопросы