2017-03-21 14 views
0

Webアプリケーションサーバー上の定義済みの場所にzipファイルがあります。 私はJavascriptを使用してファイルをダウンロードしようとしていますが、FFでは動作しますがChromeでは動作しません。 誰かがこれを行うためのより良い方法をクロスブラウザフレンドリーな方法(FF/Chrome/IE)に遭遇しましたか?私がSave asプロンプトをさらに良くすることができたら。 Dojoツールキットを使用すると便利です。Javascript Zipファイルをサーバーからダウンロード

function downloadZip() { 

    var a = document.createElement("a"); 

    document.body.appendChild(a); 
    a.href  = "/path_to_file/my.zip"; 

    a.click(); 
} 
+0

なぜ 'window.location.href = '/ path_to_file/my.zip''だけではないのですか? –

+0

これを考えていましたが、この時点でWebアプリケーションのコンテキストを取得する方法はありません...(それは私が知っている) – blu10

答えて

2

これを試してみてください。

function downloadURI(uri, name) 
{ 
    var link = document.createElement("a"); 
    link.download = name; 
    link.href = uri; 
    link.click(); 
} 
+0

私のためにChromeで動作しませんでした – blu10

0

私はこれにdojo/request/iframeを使用しました。これは私の正確なコードです:

iframe._currentDfd = null; // Force Dfd to be empty in case prior calls have not been cleared 
iframe.post('path_to_file/file.zip',{ 
      data: params, 
      handleAs: "html" 
      }).then(function (data) { 
       console.log('Then called' + data); 
      }, function (err) { 
       console.log(err); 
}); 

これはChrome、Firefox、IEで動作します。

関連する問題