点击文件名旁边的下载按钮,我从后端获取文件内容。此内容以字节为单位。该文件可以是任何类型。如何将从后端接收的数据转换为文件并在接收响应时自动下载(文件内容)。新的html和angular js。需要任何指针或建议:)
答案 0 :(得分:1)
您需要让后端告诉您的前端文件的位置,然后前端可以放置文件的链接。后端应该可能为此文件生成唯一的哈希名称。
只要后端网络服务器配置了正确的mime类型,实际文件就可以作为Rest GET请求的一部分返回。
因此,在您的控制器中,您可以调用服务来获取文件路径:
SomeController.$inject = ['$http'];
var SomeController = function($http) {
var self = this;
$http.get('/download-file-path').then(function(path) {
self.path = path;
}
}
然后在你看来
<div ng-controller='SomeController as vm'>
<a ng-href="{{vm.path}}">Download</a>
</div>
当角度调用GET: /download-file-path
时,后端应返回文件的名称和路径,例如/download/file-7dje79ae.xml
。然后angular将此路径放在a
链接中。当用户点击下载按钮时,用户浏览器将向/download/file-7dje79ae.xml
发出请求并下载文件。