For at beregne MD5-værdien af en fil på en webside behøver dette projekt heldigvis kun at være kompatibelt med moderne browsere, ellers bliver det dræbt.
Faktisk er MD5 på filer meget simpelt for backend. For eksempel, ved at bruge Node.js, kan blot følgende kodelinjer bruges:
Men for browsere, hvis du ikke kan bruge HTML5's fil-API, er det næsten umuligt for fil-md5. Hvis du ikke kan bruge fil-API'en, så del den venligst med mig.
For at md5'e en fil i en browser er den grundlæggende idé at bruge HTML5 FileReader-grænsefladen til at læse filen til hukommelsen, derefter hente filens binære indhold og til sidst md5.
Der er allerede folk på Github, der forsker i dette problem, og et af de bedste projekter er js-spark-md5, som bruger verdens hurtigste md5-algoritme.
For bedre genbrug af kode indkapslede jeg browser-md5-fil oven på js-spark-md5, hvilket gør det nemmere at bruge md5-filen.
Projektadresse: browser-md5-file:https://github.com/forsigner/browser-md5-file
Det er meget nemt at bruge:
For detaljeret brug, se venligst dokumentationen på Github.
Hvad angår browserkompatibilitet, kan det på grund af HTML5 API'et, der bruges, kun være kompatibelt med følgende browsere:
- IE10+
- Firefox
- Krom
- Safari
- Opera
Et andet punkt er, at store MD5-filer vil præstere dårligt på grund af behovet for at læse filer til hukommelsen.
|