.csv
ファイルをダウンロードするための次のコードがあります。
$.ajax({
url: urlString,
contentType: "application/json; charset=utf-8",
dataType: "json",
cache: false,
success: function(data) {
if (data) {
var iframe = $("<iframe/>").attr({
src: data,
style: "visibility:hidden;display:none"
}).appendTo(buttonToDownloadFile);
} else {
alert('Something went wrong');
}
}
});
は、ファイルを生成し、iFrame の src 属性に割り当てられたファイル パスを返すurlString
Restful サービスを指しています。.csv
これはどの.csv
ファイルでも機能しますが、ファイルに問題があり.xml
ます。
同じコードを使用しているが、を変更しcontentType
てファイルtext/xml
のダウンロードに使用すると、.xml
これは機能しません。
.xml
ここでファイルに同じアプローチを使用できますか?
アップデート:
私を正しい方向に向けてくれたベンに感謝します。ajax 呼び出しはまったく必要ないことがわかりました。代わりに、iFrame とその url 属性を使用して Web サービスを呼び出すことができます。これにより、コンテンツが生成され、ヘッダー ( Content-Disposition
) が追加され、ストリームが返されます。