Om de MD5-waarde van een bestand op een webpagina te berekenen, hoeft dit project gelukkig alleen compatibel te zijn met moderne browsers, anders wordt het beëindigd.
Sterker nog, MD5 op bestanden is heel eenvoudig voor de backend. Bijvoorbeeld, met Node.js voldoende alleen de volgende regels code:
Maar voor browsers, als je de bestands-API van HTML5 niet kunt gebruiken, is het bijna onmogelijk voor bestands-md5. Als je de bestands-API niet kunt gebruiken, deel deze dan alsjeblieft met mij.
Om een bestand in een browser te md5'en, is het basisidee om de HTML5 FileReader-interface te gebruiken om het bestand naar het geheugen te lezen, vervolgens de binaire inhoud van het bestand te halen, en tenslotte md5.
Er zijn al mensen op Github die dit probleem onderzoeken, en een van de beste projecten is js-spark-md5, dat het snelste md5-algoritme ter wereld gebruikt.
Voor beter hergebruik van code heb ik browser-md5-file bovenop js-spark-md5 ingekapseld, wat het gebruik van het md5-bestand makkelijker maakt.
Projectadres: browser-md5-file:https://github.com/forsigner/browser-md5-file
Het is heel eenvoudig te gebruiken:
Voor gedetailleerd gebruik, raadpleeg de documentatie op Github.
Wat betreft browsercompatibiliteit, kan deze vanwege de gebruikte HTML5 API alleen compatibel zijn met de volgende browsers:
- IE10+
- Firefox
- Chroom
- Safari
- Opera
Een ander punt is dat grote MD5-bestanden slecht presteren vanwege de noodzaak om bestanden naar het geheugen te lezen.
|