JavaScriptを使用してプログラムでWebサーバーからzipファイルをダウンロードしようとしましたが、アーカイブが壊れているという問題に直面しています。私は例としてアーカイブzipfileをダウンロードするとファイルが破損する
a) The file header is corrupt
b) unexpected end of archive
を開こうとすると上のsample.zipファイルのダウンロード中に、私は、私は次のエラーを取得
function download(){
var http = new XMLHttpRequest();
http.open("GET", 'http://jadonchemicals.com/sample.zip');
http.setRequestHeader("dataType", "jsonp");
http.onreadystatechange = function() {
if (http.readyState == 4 && http.status == 200)
{
var blobdata=new Blob([http.responseText], {type: "application/zip"});
var a = document.createElement("a");
a.href = window.URL.createObjectURL(blobdata);
a.click();
}
};
http.send();
}
をダウンロードするには、次の機能を使用しています
このリンクでは、ファイルは975kのサイズにダウンロードされます。 http://jadonchemicals.com/Blobtozip/
私はプログラム的に私は、これはエンコーディングの問題の結果である疑い1779kし、ボタンにスクリプトをリンクすることによって、ファイルサイズが大きくなるのはJavaScriptを使用して、ファイルが
を破損しているのと同じことをしよう。解決するために何をすべきかを提案できますか?
ありがとう@ 0liveradam8 ...私は必要性の重要な部分について言及していませんでした。また、ファイルをクラウドサーバーに送信し、blobからLocalStorageにファイルを作成する必要があります。私がダウンロードした場合、私はこれを自動的に行うことはできません。ファイルをビルドすると破損が発生している可能性があります – user7995357
おそらく、この投稿はhttps://stackoverflow.com/questions/21008732/javascript-save-blob-to-localstorageによってローカルストレージにBLOBを保存するのに役立ちます。 – 0liveradam8