Ich habe ein Problem mit BlobBuilder (Chrome11) Ich versuche, ein Bild vom Server mit XHR-Anfrage zu erhalten. Dann versuche ich es mit BlobBuilder / FileWriter in lokalen FS zu speichern. Bei jedem Beispiel im Internet geht es um die Arbeit mit text / plain mime type und diese Beispiele funktionieren gut. Aber wenn ich versuche, mit XHR erhaltene Binärdaten zu schreiben, wird die Dateigröße etwa 1,5-2 mal größer als die ursprüngliche Dateigröße. Und es kann nicht in Picasa / Eye Of Gnome angezeigt werden.
%Vor%fsLink existiert, dies ist die Erweiterung.
Das Problem ist, dass BlobBuilder.append(xhr.responseText)
sein Argument als UTF-8-String erkennt, was XHR zurückgibt, und nicht binäre Daten, was genau das ist. Es gibt ein paar Tricks, um den BlobBuilder als Binärdaten anstelle von String-Daten zu lesen:
Dies gab mir eine Datei mit der gleichen Länge wie xhr.getResponseHeader('Content-Length')
es hätte sein sollen.
Ich denke, Stoive ist genau richtig, aber ich möchte darauf hinweisen, dass anstelle von BlobBuilder jetzt der Blob-Konstruktor zur Verfügung steht, der den Trick macht.
%Vor%Ich denke, das entspricht mehr den aktuellen Standards. Vielen Dank Stoive, sehr hilfreich.
Btw XHR2 stellt einen besseren Weg für die Umsetzung meiner Aufgabe dar:
%Vor%Die einzige Enttäuschung ist, dass dies immer noch ein Bug in Chrome ist: Ссылка
XMLHttpRequest kann Ссылка nicht laden. Origin-Datei: // ist nicht zulässig von Access-Control-Allow-Origin.
Tags und Links javascript html5 google-chrome-extension blob