2010-07-08 6 views
1

Pouvez-vous obtenir les données binaires d'un fichier sans la classe fileReader? J'essaye de télécharger des dossiers et je l'ai fonctionnant dans le firefox & chrome/webkit mais le safari 5 n'a pas le filereader.html5 données binaires fileapi

Il doit y avoir un moyen d'obtenir les données binaires comme gmail a glisser-déposer qui fonctionne dans Safari 5.

Répondre

0

J'ai été confronté au même problème, mais je ne suis toujours pas sûr de la xhr.send (fichier). Comme lors de l'utilisation de l'ASP.NET j'ai eu l'erreur "Des données potentiellement dangereuses sont détectées ...". Je pensais que xhr.send (fichier) n'était pas implémenté par Safari étant donné que FireReader lui-même est manquant.

Il est bon de savoir que xhr.send (fichier) fonctionne dans le Safari. Je vais essayer d'enquêter plus loin.

Cependant, il existe une meilleure alternative pour cela qui fonctionne très bien FormData.

var file = e.dataTransfer.files[0]; 
var xhr = new XMLHttpRequest(); 
xhr.open("POST", "upload_process.php", true); 
var fd= new FormData(); //its supported in the safari, chrome and firefox 4 
fd.append(file.name, file); 
xhr.send(fd); //passing in file object seems to work 

Il y a un autre problème que je suis confronté en ce moment, son HTML5 DataTransfer detection error in Chrome s'il vous plaît laissez-moi savoir si vous avez fait face et a trouvé une solution pour cela.