angular.js - AngularJS 如何下载服务端返回的附件
伊谢尔伦
伊谢尔伦 2017-05-15 17:01:06
0
1
524

使用AngularJS $http向nodejs服务端发送导出数据请求时,得到的excel文件是乱码,控制台输出response.data如下图:

服务端返回的头部信息如下:

Accept-Range:bytes
Connection:keep-alive
Content-Disposition:attachment; filename=%E8%A1%A5%E8%B4%B4%E8%B5%84%E6%A0%BC%E5%B7%B2%E5%AE%A1%E6%A0%B8%E4%BF%A1%E6%81%AF%E8%A1%A8.xlsx
Date:Wed, 20 Apr 2016 09:39:33 GMT
Transfer-Encoding:chunked
X-Powered-By:Express

Angular controller:

$scope.export = function() {
    $http({
        url: "/api/exportExcel",
        method: "GET"
    }).then(function(response) {
        var anchor = angular.element('<a/>');
        anchor.attr({
            href: 'data:attachment/xlsx;charset=utf-8,' + encodeURI(response.data),
            target: '_blank',
            download: '2016-04-20.xlsx'
        })[0].click();
    });
}

Angular view:

<button type="button" class="btn" ng-click="export()">导出</button>

请问如何得到正确可用的excel文件?像这种导出数据到excel的普遍实现方法是什么? 感谢!

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全員に返信(1)
滿天的星座

$window.location = '/api/exportExcel' を直接使用してみてください?

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!