2010-10-07 5 views
0

Je suis en train de md5 certains fichiers avec as3corelib, mais si je compare le hash as3 avec un php, je reçois des chaînes différentes.Différents MD5 avec as3corelib

C'est ce que je fais:

_loader = new URLLoader(); 
_loader.load(new URLRequest("image.jpg")); 
_loader.addEventListener(Event.COMPLETE, completeHandler); 

private function completeHandler(event:Event):void { 
     var data:ByteArray = new ByteArray(); 
     data.writeUTFBytes(_loader.data); 
     var hash:MD5Stream = new MD5Stream(); 
     trace(hash.complete(data)); 
} 

Je l'ai déjà googlé pour cette question, trouver ce post où une chose similaire est discuté (faisant un hachage d'une chaîne).

Une idée?

Répondre

3

Essayez de mettre le chargeur dataFormat propriété à URLLoaderDataFormat.BINARY avant la charge() appel:

_loader = new URLLoader(); 
_loader.dataFormat = URLLoaderDataFormat.BINARY; 
_loader.load(new URLRequest("image.jpg")); 
_loader.addEventListener(Event.COMPLETE, completeHandler); 

private function completeHandler(event:Event):void { 
     var hash:MD5Stream = new MD5Stream(); 
     trace(hash.complete(_loader.data)); 
} 

Ensuite, utilisez directement la variable _loader.data depuis maintenant il est un ByteArray

+0

ça a fait l'affaire. Merci :) –