Por alguna razón, los archivos en mi depósito S3 se están forzando como descargas en lugar de mostrarse en línea, por lo que si copio un enlace de imagen y lo pego en la barra de direcciones y luego navego hacia él, mi navegador promoverá la descarga. En su lugar, tengo que hacer clic en la imagen abierta para ir a la URL.
Cualquier forma de cambiar la forma en que se sirven los archivos desde S3
Respuestas:
fuente
Necesita cambiar el tipo de contenido. Desde la consola de S3, haga clic con el botón derecho en el objeto y seleccione Propiedades, luego está en Metadatos. También puede hacerlo mediante programación: http://docs.amazonwebservices.com/AWSSDKforPHP/latest/index.html#m=AmazonS3/change_content_type
fuente
putObject()
método (comoputObjectFile()
es heredado ahora).También debe especificar la disposición del contenido para el adjunto en línea.
fuente
si está utilizando Python, puede configurar ContentType de la siguiente manera
También puede lograr lo mismo en aws cli. Nota
*.jpeg
Verifique la documentación de s3Alternativamente, si desea modificar un objeto a la vez, puede usar s3api copy-object
fuente
Puede probar este, ContentType es obligatorio para abrir en un navegador si ya ha abierto cualquier URL en el navegador, luego intente en modo incógnito.
fuente
Puedes probar este, esto funciona para mí.
fuente
También puede cambiar el tipo de contenido desde la consola de AWS S3.
Luego verá el lado emergente, úselo para cambiarlo manualmente.
fuente
Descubrí que si le pasamos un valor vacío
ContentType
, se abrirá el archivo en lugar de descargarlo.Esto es realmente bueno cuando se cargan archivos de todo tipo de extensiones.
fuente
En caso de que alguien que esté usando Java SDK encuentre una solución para esto, debe establecer el tipo de contenido en ObjectMetaData.
fuente