主问题
时间: 2022.04.08
问题描述: 在实现页面表格下载为excel文件的需求时,页面下载成功后的excel文件无法打开,图示如下。![在这里插入图片描述](https://img-blog.csdnimg.cn/588de2722a33427787eb28ee4bc6a1cb.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBARXZlcnlib2R5X3Vw,size_14,color_FFFFFF,t_70,g_se,x_16#pic_center)
然后F12打开控制台,发现后端返回的数据为字符串乱码。
原因分析: postman等接口调用工具去请求这种需要下载文件的接口,会有问题的。不要使用ajax,axios等异步请求去请求下载接口。
解决方法: 将“button”按钮替换为“a”,使用“href”对接口进行访问。因为本问题所需要请求的接口需要传参,可以将参数通过如下方式进行绑定。“$(‘#标签ID’).prop(‘href’,‘url地址?参数名=’ + 参数)”