Quiero obtener una base64-String de una URL de imagen de hostet de firebase. Funciona bien en todos los navegadores, pero no cuando estoy creando una aplicación para iOS o Android con ionic.
getDataUrl(url) { return new Promise(function (resolve, reject) { var request = new XMLHttpRequest(); request.open('GET', url, true); request.responseType = 'blob'; request.onload = function () { var reader = new FileReader(); reader.readAsDataURL(request.response); reader.onload = function (e) { console.log('DataURL:', e.target.result); resolve(e.target.result) }; reader.onerror= function (e) { console.log('Error:', e.target.error.code); reject(e.target.result) }; }; request.send(); }); }Desafortunadamente, parece detenerse en reader.readAsDataURL(request.response); pero no hay ningún error registrado para verificar.
Tuve que agregar esto:
if (request.response instanceof Blob) { const realFileReader = (reader as any)._realReader; if (realFileReader) { reader = realFileReader; } }de https://github.com/danielsogl/awesome-cordova-plugins/issues/505#issuecomment-698831447