Para calcular o valor MD5 de um arquivo em uma página web, felizmente, este projeto só precisa ser compatível com navegadores modernos, caso contrário será cancelado.
Na verdade, o MD5 nos arquivos é muito simples para o backend. Por exemplo, usando Node.js, basta as seguintes linhas de código suficientes:
Mas para navegadores, se você não consegue usar a API de arquivos do HTML5, é quase impossível para o arquivo md5. Se você não puder usar a API do arquivo, por favor, compartilhe comigo.
Para fazer md5 em um arquivo em um navegador, a ideia básica é usar a interface HTML5 FileReader para ler o arquivo na memória, depois obter o conteúdo binário do arquivo e, finalmente, md5.
Já existem pessoas no Github pesquisando esse problema, e um dos melhores projetos é o js-spark-md5, que usa o algoritmo md5 mais rápido do mundo.
Para melhor reutilização do código, encapsulei o arquivo md5 do browser-md5 sobre o js-spark-md5, o que facilita o uso do arquivo md5.
Endereço do projeto: browser-md5-file:https://github.com/forsigner/browser-md5-file
É muito fácil de usar:
Para uso detalhado, por favor, confira a documentação no Github.
Quanto à compatibilidade dos navegadores, devido à API HTML5 utilizada, ela só pode ser compatível com os seguintes navegadores:
- IE10+
- Firefox
- Chrome
- Safari
- Ópera
Outro ponto é que arquivos MD5 grandes têm desempenho ruim devido à necessidade de ler arquivos na memória.
|