2017-02-22 26 views
1

Я пытаюсь использовать $ cordovaFile.readAsArrayBuffer, но я получаю следующее сообщение об ошибкеcordovaFile.readAsArrayBuffer ENCODING_ERR

Я попробовал несколько решений из форума, но без успеха

function getFileBlob(url, cb) { 
console.log(url); 
var path = url.substring(0, url.lastIndexOf('/') + 1); 
var filename = url.substring(url.lastIndexOf('/') + 1, url.length); 
console.log('path', path); 
    console.log('file', filename); 
    $cordovaFile.readAsArrayBuffer(path, filename) 
      .then(function (success) { 
       var blob = new Blob([success], { type: 'image/jpeg' }); 
       cb(blob); 
      }, function (error) { 
       onsole.error(error); 
       cb(null); 
      }); 
} 

Ошибка: FileError код: 5, сообщение: "ENCODING_ERR"

Console.logs:

Мой URL: /file:///storage/emulated/0/Android/data/com.ionicframework.xx443164/cache/.Pic.jpg

вар путь: /file:///storage/emulated/0/Android/data/com.ionicframework.xx443164/cache/

вар файла: .Pic.jpg

Я тестирую на андроид

ответ

-1

Я думаю, что это может помочь вам, если вам нужно, чтобы получить фотографии в качестве типа двоичных объектов

var photo = url; // your photo     
var mainDic = photo.substring(0, photo.lastIndexOf('/') + 1), 
    mainArchive = photo.substring(photo.lastIndexOf('/') + 1, photo.length); 
$cordovaFile.readAsArrayBuffer(mainDic, mainArchive).then(function(success) { 
    var blob = new Blob([success], { 
     type: 'image/jpeg' 
    }); 
    // now blob is your photo as blob type 
}, function(error) { 
    console.error(error); 
});