Unfortunately, no. 
Hola, tengo el mismo problema.
El archivo PDF no se muestra, sino que siempre se descarga, independientemente de la configuración de mi navegador (Chrome, Firefox).
Por lo que he leído, esto está relacionado con el content_type del archivo.
He encontrado esto:
¡Excelente pregunta! Lo que define esa acción es el encabezado “Content-type” enviado desde el servidor al cliente. Puedes definir el valor de este encabezado utilizando herramientas compatibles con S3. Hay una buena explicación al respecto aquí:
Pero no he logrado avanzar.
Parece que el problema radica en indicar el Content-Type o el content-disposition, pero no sé si debo hacerlo al momento de la carga.
Quizás algún experto nos pueda ayudar.
Encontré esta información más clara que la anterior.
Mi problema es que no sé cómo usarla para resolver la situación. ![]()
Si quieres que el navegador trate el archivo como PDF, debes indicarle que se trata de un archivo PDF. Para ello, debes enviar la cabecera correspondiente:
Content-type: application/pdfLa cabecera actual que envía S3 es:
Content-type: application/octet-streamDado que subes los archivos a S3, puedes establecer el tipo MIME correcto para el archivo durante la subida o después, utilizando algunas de las herramientas de S3 (como s3cmd para Windows, por ejemplo).
Según el enlace a la documentación que proporcionaste, la función putObjectFile está obsoleta, pero esta es su definición:
putObjectFile (string $file, string $bucket, string $uri, [constant $acl = S3::ACL_PRIVATE], [array $metaHeaders = array()], [string $contentType = null])Como puedes ver, el último parámetro es contentType, por lo que puedes establecerlo en application/pdf al subir el archivo.
Esto establecerá la cabecera correcta al descargar el archivo.