2011-03-15 27 views
11

Estoy cargando archivos aws s3 en javascript, y AFAIK todos necesitan un tipo mimet para funcionar correctamente. ¿Hay una secuencia de comandos que mapea automáticamente los nombres de los archivos a tipos miméticos que podría usar?tipos mimet automáticos en javascript node.js

Editar: Si hay una manera para que Amazon maneje automáticamente los tipos MIME que sería mejor.

+0

Estoy bastante seguro de que el navegador realiza una determinación interna del tipo MIME del archivo, probablemente por reglas dependientes del navegador y/o la plataforma. No sé de ninguna manera para que el código en la página juegue un papel en esa determinación. – Pointy

+1

oh espera - estás haciendo esto desde el nodo ... cosa completamente diferente, por supuesto :-) – Pointy

Respuesta

12

https://github.com/broofa/node-mime es una biblioteca de aspecto decente para búsquedas automáticas de mimo.

+0

me golpeó :) –

+1

ahh ahí vamos, gracias, estaba a mitad de camino escribiendo mi propio debería mejorar mi google fu – Mark

+0

A partir de junio de 2012, el repositorio ya no está disponible. – Eye

5

NPM instalar mime

require('mime') 

var mimetype = mime.lookup('file.txt') 
+0

Maldita sea, ¿es síncrono? "content = fs.readFileSync (archivo, 'ascii')," sí, eso necesita cambiar. –

+0

@tomwrong La función 'load' con' readFileSync' solo carga los archivos de configuración en 'require()', no es utilizada por 'mime.lookup'. –

+0

en cuyo caso, ¿por qué la búsqueda no tiene una función de devolución de llamada? Por favor, no lea esto de la manera incorrecta, todavía estoy aprendiendo node.js y honestamente no puedo entender cómo cualquier código después de "var mimetype = mime.lookup ('file.txt')" se ejecutará hasta que regrese la búsqueda. –

2

Encontrado esta pregunta a través de Google y sólo quería añadir que la detección tipo MIME observando la extensión de archivo no es seguro en absoluto. Recomiendo usar mmmagic que realmente mira los datos para determinar el tipo de mimo de un archivo.

+0

De acuerdo. pero, ¿sabes cómo instalar este paquete en la plataforma de Windows? es un problema de reconstrucción de npm-gyp. https://github.com/mscdex/mmmagic/issues/70 – agpt

Cuestiones relacionadas