如何将来自Node的传入文件stream保存到AngularJS中

在我的快递服务器上,我有一个后期请求,从亚马逊S3获取PDF文件,并将其发送回angular度。 这是我的快递服务器端点如何结束:

var fileStream = s3.getObject(options).createReadStream(); fileStream.pipe(res); 

在我发布的东西的angular度,并试图保存这一点

 $http.post(url, data) .then(function (data, status, headers, config) { var file = new Blob([data.data], {type: 'application/pdf'}); FileSaver.saveAs(file, vm.projectName); }) 

我得到一个无效的pdf文件。 我有大约300kb(比原始文件更多),我相信它不是pdf,而是一个缓冲区?

我试图实现的: – 发送请求到服务器 – 服务器从S3获取文件,将其发送回Angular Controller – Angular Controller将其保存为.png

在进行POST调用时,请将responseTypearrayBuffer设置为arrayBuffer内部configuration,以使响应正确转换。

 $http.post(url, data, {responseType: "arraybuffer"})