Javascript 无法在angular 7中导出excel(xlsm)-使用spring引导后端

Javascript 无法在angular 7中导出excel(xlsm)-使用spring引导后端,javascript,angular,typescript,spring-boot,filesaver.js,Javascript,Angular,Typescript,Spring Boot,Filesaver.js,我有一个用于导出到excel功能的Spring引导控制器 问题是,下载excel后,该文件已损坏,永远不会打开。 代码中有什么错误?我知道这与字符编码有关,因为当我通过邮递员(使用“保存文件”功能)下载相同的文件时,文件会顺利打开。如果我打开postman格式和angular格式,我会看到一些二进制字符的差异 您的exportAlluserData()方法中有错误的responseType值: responseType: 'blob' as 'json' 将其替换为:responseType:

我有一个用于导出到excel功能的Spring引导控制器

问题是,下载excel后,该文件已损坏,永远不会打开。
代码中有什么错误?我知道这与字符编码有关,因为当我通过邮递员(使用“保存文件”功能)下载相同的文件时,文件会顺利打开。如果我打开postman格式和angular格式,我会看到一些二进制字符的差异

您的
exportAlluserData()
方法中有错误的
responseType
值:

responseType: 'blob' as 'json'

将其替换为:
responseType:'arraybuffer'

更改为arraybuffer后仍然会出现相同的错误。@FKMN API是否返回正确的文件,但从角度来看,它已损坏?你能从任何地方删除
charset=unicode
吗?我已经删除并尝试了。还是一样的问题。这是正确的做法吗?我正在从spring boot后端返回xlsm文件,其中启用了宏。参考本文,我最终通过在html代码中引入锚定标记解决了这个问题-。这不需要任何角度/类型脚本代码。