es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo cargar una imagen en Firebase versión 9?

Estoy intentando actualizar el código de la versión 8 a la versión 9, pero la imagen que se sube produce un error al cargar la vista previa…

Aquí está el código:

async storeImage(img: { uri: string; base64: string }, userId: string) {
    try {
      let imageUrl = null;
      const imageName = img.uri.substring(img.uri.length - 40);

  const imageRef = ref(this.storage, `profile-images/${userId}/${imageName}`);


  uploadString(imageRef, img.base64, 'base64', { contentType: "image/jpg" }).then((snapshot) => {
    console.log("image stored", snapshot);
  })

  getDownloadURL(ref(this.storage, `profile-images/${userId}/${imageName}`))
    .then(url => {
      const xhr = new XMLHttpRequest();
      xhr.responseType = 'blob';
      xhr.onload = (event) => {
        const blob = xhr.response;
      };
      xhr.open('GET', url);
      xhr.send();
      console.log('getDownloadURL', url);

      imageUrl = url;
    })

  return imageUrl
} catch (error) {
  console.log(error);
}


}
}

La cadena uri es la dirección en el dispositivo, la base64 es
/9j/4AAQSkZJRgABAQAASABIAAD/4QBYRXhpZgAATU0AKgAAAAgAAgESAAMAAAABAAEAAIdpAAQAAAABAAAAJgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAyKADAAQAAAABAAAAhAAAAAD/7QA4UGhvdG9zaG9wIDMuMAA4QklNBAQAAAAAAAA4QklNBCUAAAAAABDUHYzZjwCyBOmACZ…

Este es el enlace para el avance del almacenamiento en Firebase.

Este es el enlace descargado, que debería ser igual al anterior.

Intenté también en uploadString usar base64url pero nada.

Cualquier tipo de ayuda sería apreciada.

Gracias de antemano.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Parece que tiene problemas para actualizar el código de la versión 8 a la versión 9 y la imagen que se carga produce un Error al cargar vista previa. Parece que está utilizando la cadena uri como dirección en el dispositivo y la cadena base64 como los datos de la imagen. También ha intentado utilizar base64url en el método uploadString, pero no ha tenido éxito.

    Sería útil ver el mensaje de error exacto que recibe al intentar cargar la imagen. Además, sería útil ver el código de la versión 8 que está tratando de actualizar. Esto nos permitiría comparar las dos versiones e identificar posibles problemas.

    Si pudiera proporcionarnos esta información, podríamos brindarle una asistencia más específica.

Comments are closed.