私はxlsx形式のレポートをダウンロードする必要があります。レポートファイルはサーバーから正常に生成され、クライアント側(aurelia-http-client)でも受信されますが、ダウンロードする方法はわかりません。aurelia-http-clientでExcelファイルをダウンロードする
1
A
答えて
0
私はこの答えhttps://stackoverflow.com/a/30270714/6677648
のような何かをするだろう...それは、このようなアウレリアでresponse interceptorのようなものに終わるだろう:
.withResponseType('blob')
.withInterceptor({
response(message) {
var defaultFileName = "default.txt";
var disposition = message.headers.headers['content-disposition']?message.headers.headers['content-disposition']:message.headers.headers['Content-Disposition'];
if (disposition) {
var match = disposition.match(/.*filename=\"?([^;\"]+)\"?.*/);
if (match[1])
defaultFileName = match[1];
}
defaultFileName = defaultFileName.replace(/[<>:"\/\\|?*]+/g, '_');
if (navigator.msSaveBlob)
return navigator.msSaveBlob(message.response, defaultFileName);
var blobUrl = window.URL.createObjectURL(message.response);
var anchor = document.createElement('a');
anchor.download = defaultFileName;
anchor.href = blobUrl;
document.body.appendChild(anchor);
anchor.click();
document.body.removeChild(anchor);
}
})
0
.withInterceptorとHELOコマンド()エラーが発生しました応答では、エラーを修正し、複数のファイルを同時にアンロードするように変更します。
getLogsCsv(param) {
this.http.configure(config => {
config
.withResponseType('blob');
});
return this.http.get("/admin/api/logs" + param)
.then(response => {
if (response.statusCode == 200) {
var defaultFileName = "FileName.csv";
var blobUrl = window.URL.createObjectURL(response.response);
var anchor = document.createElement('a');
anchor.download = defaultFileName;
anchor.href = blobUrl;
document.body.appendChild(anchor);
anchor.click();
document.body.removeChild(anchor);
return response.content;
} else {
console.log('response was not ok.');
console.log(response);
}
})
.catch(error => {
console.log(error);
});
}
0
私はdownloadjsライブラリを使用しました。 、ライブラリをインストールして、あなたのaurelia.json
に追加して、次のようにコードを書く次に
import * as download from 'downloadjs'
を追加します。
this.httpClient.fetch('your/url/here')
.then((response: Response) => response.blob())
.then((blob: Blob) => download(blob, 'filename.extension', 'mime type of the file'));
出来上がりを、あなたのファイルがダウンロードされます。
関連する問題
- 1. excelファイルをダウンロードする
- 2. Sharepoint ExcelファイルをPythonでダウンロード
- 3. WebAPI/MVCでExcelファイルをダウンロード
- 4. excel-builder.jsでファイルをダウンロード
- 5. Excelファイルをサーブレット経由でダウンロードする
- 6. hrefでExcelファイルをダウンロードする
- 7. djangoでExcelファイルをダウンロードする
- 8. Pentaho Excelファイルのダウンロード
- 9. ASP.NET MVC EPPlus Excelファイルをダウンロード
- 10. asp.net download IE6でExcelファイルをダウンロード
- 11. WebApi経由でページからExcelファイルをダウンロードする
- 12. Apache POI - GrailsアプリケーションでExcelファイルをダウンロードする方法
- 13. 角2でExcelファイルをダウンロードするには
- 14. DataTableから複数のExcelファイルをダウンロード
- 15. Python Django Excelファイルとしてモデルをダウンロード
- 16. 応答をExcelファイルとしてダウンロード
- 17. ashxファイルでexcelしてダウンロードする大量データのエクスポート
- 18. ボタンをクリックすると、Excelのファイルがダウンロードされます。
- 19. Spreadsheet gemを使ってExcelファイルをダウンロードする
- 20. closedxmlを使用してWeb APIからExcelファイルをダウンロードする
- 21. curlを使用してExcelファイルをダウンロードする
- 22. GAE pythonをダウンロードするためのExcelファイルを送信
- 23. コードイグナイタでコントローラからexcelファイルをダウンロードしています
- 24. 春 - POIでExcelをダウンロード
- 25. excelファイルをダウンロード可能にする方法
- 26. Excelファイルをjspページにダウンロードするリンクとして提供
- 27. webserverからexcelファイルからデータをダウンロードするには
- 28. AcumaticaでExcelファイルをダウンロードするためのボタンを追加するには
- 29. セレングリッド上のExcelファイルをダウンロードし、ここでそれを
- 30. JSFを使用してExcelファイルをダウンロードできない
ありがとう! – Lumdeia