【发布时间】:2019-07-25 15:00:50
【问题描述】:
我正在调用一个 Angular 组件,该组件调用我创建的 API 服务来调用 nodejs 后端。后端使用 res.download 下载一个 zip 文件。我相信响应没有被正确处理,因为当我直接从 url (localhost:3000/api/download/file) 调用后端时,它工作得很好。下面是代码:
1) 角度组件
downloadZipFile(index) {
this._apiService.downloadZip(index).subscribe(data => {
});
}
2) Angular apiService
downloadZip(index) {
return this._http.get('http://localhost:3000' + appConfig.__apiUrl + 'download/' + index);
}
3) NodeJS API
router.get('/download/:index', (req, res) => {
res.download(path.join(__dirname, 'downloads/' + req.params.index + '.zip'));
});
【问题讨论】:
-
已解决:试过这个解决方案,效果很好stackoverflow.com/questions/50907542/…