2010-11-15 20 views
10

Estoy construyendo una página web para la cual necesito una implementación de carga de archivos múltiples que pueda copiar un archivo antes de cargarlo en el servidor.Cargar varios archivos con md5 verificar antes de cargar

La idea es que los usuarios pueden cargar archivos que pueden o no existir en el servidor. Para ahorrar ancho de banda, quiero comprimir el archivo antes de cargarlo en el servidor, enviar el hash a través de POST y solo continuar con la carga si el servidor responde que no tiene un archivo con este hash.

¿Existen implementaciones gratuitas basadas en Flash (supongo que JavaScript no podrá cargar el archivo y hash) que pueden funcionar para mí?

+1

Interesante solicitud, pero no puedo ver nada en la dirección. Esta es una solicitud de función relacionada en swfupload: http://code.google.com/p/swfupload/issues/detail?id=287 puede considerar abrir una solicitud de función usted mismo, o agregarla usted mismo a SWFUpload o una implementación similar si hablas Flash. Debería ser relativamente fácil hacer que Flash pase el valor de MD5 a una devolución de llamada de Javascript (creo que ya hay una devolución de llamada 'onselect'), y hacer el resto mediante una solicitud de Ajax –

+0

Podría ser de ayuda: http: // stackoverflow. com/questions/768268/how-to-calculate-md5-hash-of-a-file-using-javascript –

Respuesta

3

Puede leer archivos en Javascript, FileReader API en HTML5 hará el trabajo por usted.

A continuación, alimentar la cadena de base 64 en b64_md5() función proporcionada por esta biblioteca: http://pajhome.org.uk/crypt/md5/instructions.html

Nota que podría llevar mucho tiempo si el archivo es demasiado grande. También es posible que necesite WebWorkers para hacer el fondo de conculación.

Cuestiones relacionadas