Tengo una URL de descarga prefirmada por AWS con una caducidad de 20 segundos:
https://our-namespace.s3.amazonaws.com/documents/7443912/ffb9bbc5-5f4f-4315-a4e8-418bc31dbef2.png?X-Amz-Security-Token=123&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20211007T004004Z&X-Amz-SignedHeaders=host&X-Amz-Expires=20&X-Amz-Credential=ASIA4SLAKW7L216GHWOI%2F20278006%2Fus-east-1%2GF3%2Faws4_request&X-Amz-Signature=123Cuando cargo esta URL en el navegador, fuerza una descarga. Estoy buscando una manera de mostrar esto como una vista previa de la imagen dentro del navegador, en lugar de iniciar la descarga de un archivo.
Mi idea inicial fue convertir esta URL en un blob y luego mostrar ese blob en un modal de vista previa de imagen. El único problema es que no estoy seguro de cómo hacerlo. Encontré el siguiente paquete: https://www.npmjs.com/package/rn-fetch-blob pero parece que ya no se mantiene.
¿Cuál sería la forma óptima de mostrar una imagen como vista previa desde el enlace de solo descarga de AWS?
Debe configurar el Content-Type correcto para cada objeto en S3, por ejemplo application/pdf o image/png .
Puede hacer esto al cargar el objeto, o puede usar la Consola de AWS S3 para modificarlo después. Tenga en cuenta que Content-Type se considera metadatos.
Establecer el Content-Type correcto en el objeto significa que cuando el objeto es servido por S3 o CloudFront, ese tipo de contenido se transmitirá al cliente, lo que le permitirá decidir si mostrarlo o descargarlo, según corresponda.