Estoy intentando crear un sitio que permita a los usuarios subir cualquier tipo de archivo que deseen. Implementé bien esta característica y el archivo se guarda en el servidor. Más tarde pueden descargar el archivo para verlo, pero estoy teniendo problemas para que funcione.
He utilizado algunos ejemplos que puedo encontrar pero todos tienden a usar archivos de texto como ejemplos. Mi problema es que el pdf y muchos otros tipos de archivos no se están descargando correctamente. Parecen descargar bien, pero ninguno de los archivos se abrirá correctamente. Comparando los archivos, parece que la mayoría del contenido de los archivos es correcto, pero ciertas partes no lo son.
Aquí está mi código maravilloso:Descarga de archivos de Grails
def file = new File(params.fileDir)
response.setContentType("application/octet-stream")
response.setHeader("Content-disposition", "filename=${file.getName()}")
response.outputStream << file.text
return
Este código se lleva a cabo dentro de un controlador que es llamada por un enlace de descarga. He intentado jugar con diferentes contentTypes, pero no sé cuál podría usar para cualquier tipo, ¿hay alguno? Todo lo que intento no resuelve el problema.
Gracias por su ayuda.
Gracias. Estaba usando el método .text pero no sabía lo que estaba haciendo, no pude encontrar ninguna documentación en él:/ –
Puede encontrar la documentación dentro de Groovy JDK (una documentación de las extensiones dinámicas del SDK de Java por Groovy). En este caso, se invoca el método java.io.File.getText(): http://groovy.codehaus.org/groovy-jdk/java/io/File.html#getText() –
¿Alguien más? ¿Sabes cómo poner muchos archivos a la respuesta? Cualquier examen? –