当前位置: 首页 > news >正文

问题解决:发现Excel中的部分内容有问题。是否让我们尽量尝试恢复? 如果您信任此工作簿的源,请单击“是”。

在开发同步导出功能是遇到了如标题所示的问题,解决后遂记录下来供大家参考。

@RestController
public class XxxController {@PostMapping("/export")public BaseResponse export(@RequestBody PolicyErrorAnalysisExportReq exportReq, HttpServletResponse response) {BaseResponse res = new BaseResponse();try {// ...} catch(Exception e) {}return res}
}

执行如上方法导出时,打开的 Excel 文件会提示:发现Excel中的部分内容有问题。是否让我们尽量尝试恢复? 如果您信任此工作簿的源,请单击“是”。

在这里插入图片描述

因为前端在处理文件流时,不知道文件流的长度,会全量处理文件流,由于指定了 @RestController 注解,除了文件流之外, BaseResponse res 的 JSON 体也会被包含在响应体中,那么这样前端便解析到了无关的字符。将导出的 Excel 文件修改成 .xml 后缀查看其中信息,如下所示:
在这里插入图片描述

发现果然包含了响应对象的 JSON 格式,解决该问题也非常简单,第一种方案是直接将返回值改成 void,让前端只处理流即可

@RestController
public class XxxController {@PostMapping("/export")public void export(@RequestBody PolicyErrorAnalysisExportReq exportReq, HttpServletResponse response) {try {// ...} catch(Exception e) {}}
}

第二种方案是在响应头中指定输出流的长度,到了指定长度后前端便不再处理,只解决 Excel 文件相关的内容即可。


http://www.mrgr.cn/news/80762.html

相关文章:

  • 前端智能识别解析粘贴板内容
  • ZooKeeper 技术全解:概念、功能、文件系统与主从同步
  • vulnhub 靶场 —— NullByte
  • 【学习笔记】计算机网络(三)
  • 【Flink快速入门-8.Flink Flink 架构介绍】
  • 针对Prompt优化的深入分析
  • tomcat的安装以及配置(基于linuxOS)
  • [代码随想录21回溯]组合问题,电话号码的字母组合问题
  • 制作一个简单的图片预览
  • python学opencv|读取图像(十六)修改HSV图像HSV值
  • 管理系统、微信小程序类源码文档-哔哩哔哩教程同步
  • 西游记战力排名、笔记等
  • pro文件转换为CMakeLists.txt文件,QT官方工具使用教程
  • 【云原生】Docker Compose 从入门到实战使用详解
  • 唯品会C++面试题及参考答案
  • FreeMarker语法
  • Restaurants WebAPI(二)——DTO/CQRS
  • 17.springcloud_openfeign之扩展组件一
  • 2024.12.19总结
  • SamOut 推理空间不变模型解析
  • [SZ901]程序固化工具速度对比
  • 【Maven】基础(一)
  • 排序算法深度好文(图解 + 代码解析 + 误区 QA )——学排序看这一篇就够了!!!
  • 洛谷P3879 [TJOI2010] 阅读理解(c嘎嘎)
  • 【CSS in Depth 2 精译_085】14.2:CSS 蒙版的用法
  • 无刷电机的概念