Ich dachte, diese beiden Teile des Codes (sie funktionieren in Chrome und Firefox) sollten das gleiche tun, aber sie verhalten sich unterschiedlich. Sie senden den binären Inhalt einer Datei über ein Objekt XmlHttpRequest
.HTML5-Datei-API XmlHttpRequest senden (Datei) anders als das Senden von readAsBinaryString() Ergebnis
Direkt XHR senden:
xhr.send(file);
lesen Datei und die Inhalte über XHR senden:
var reader = new FileReader();
reader.onload = function(event) {
xhr.send(event.target.result);
};
reader.readAsBinaryString(file);
Datei-Bytes nicht übereinstimmen zwischen Anfragen gesendet werden (in der zweiten, ist die Datei größer als in der erste, und die Datei wird beschädigt).
Ich muss die zweite Option arbeiten.
Irgendwelche Ideen?
Funktioniert dieser Code nur in Firefox? –
Es funktioniert in Firefox und Webkit. Opera hat keinen BlobBuilder oder typisierte Arrays. [BlobBuilder.js] (https://github.com/eligrey/BlobBuilder.js) bekommt Sie BlobBuilder, ich versuche herauszufinden, wie man mit fehlenden typisierten Arrays umgehen kann. – aeosynth