我试图从服务器下载.xls文件,但是它抛出如下所示的错误:->
错误是:
SyntaxError:意外令牌-JSON中JSON.parse位置0 ()在XMLHttpRequest.onLoad (http://localhost:4200/vendor.js:31219:51)在 ZoneDelegate.push ../ node_modules / zone.js / dist / zone.js.ZoneDelegate.invokeTask (http://localhost:4200/polyfills.js:2761:31)在Object.onInvokeTask (http://localhost:4200/vendor.js:72221:33)在 ZoneDelegate.push ../ node_modules / zone.js / dist / zone.js.ZoneDelegate.invokeTask (http://localhost:4200/polyfills.js:2760:36)在 Zone.push ../ node_modules / zone.js / dist / zone.js.Zone.runTask (http://localhost:4200/polyfills.js:2528:47)在 ZoneTask.push ../ node_modules / zone.js / dist / zone.js.ZoneTask.invokeTask [in invokeTask的[as invoke](http://localhost:4200/polyfills.js:2836:34) (http://localhost:4200/polyfills.js:3880:14)在 XMLHttpRequest.globalZoneAwareCallback (http://localhost:4200/polyfills.js:3906:17)文本:“��ࡱ�;��”
在我的组件中,我实现了调用服务的功能,并且我正在使用文件保护程序来保存文件,但是会抛出错误。
download.component.ts:->
import * as FileSaver from 'file-saver';
export_licence(){
this.service.export_licence().subscribe((file: Blob) => {
FileSaver.saveAs(file,'degreeCertificate.xls');
}, (err) => {
console.log("Download Error:", err);
});
}
download.service.ts:->
export_licence() {
return this.http.post(this.export_licence_url,{responseType: "blob"});
}
我应该能够从服务器下载.xls文件,我们将提供任何帮助。
答案 0 :(得分:0)
检查正确设置的响应标题(针对内容类型),并确保文件未损坏。
答案 1 :(得分:0)
这对我有用
download.component.ts:->
--exitonerror
在使用中,我正确添加了标题。
download.service.ts:->
import * as FileSaver from 'file-saver';
export_licence(){
this.service.export_licence().subscribe((file: Blob) => {
FileSaver.saveAs(file,'degreeCertificate.xls');
}, (err) => {
console.log("Download Error:", err);
});
}