使用springmvc创建下载文件时发现只有IE不能成功下载
/** * 获取中图片以下载使用 260*260 * * @return * @throws IOException */ @RequestMapping("/download") public ResponseEntity<byte[]> download(Long id, HttpServletRequest request) throws Exception { Order order = orderService.find(id); String code = order.getOrderDimensional().getTwoDimensionalCode(); try { ByteArrayOutputStream out = new ByteArrayOutputStream(); MatrixToImageWriter.buildToOutputStream(code, 260, 260, out); ByteArrayInputStream input = new ByteArrayInputStream(out.toByteArray()); Font font = new Font("微软雅黑", Font.BOLD, 20); out = new ByteArrayOutputStream(); //260*260 图片允许最多数字字符串:21 font 20px int x = 0; if (code.length() <= 21 && code.length() >= 0) { x = (21 - code.length()) / 2 * 12; } orderDimensionalService.addCodeView(input, out, code, 20, x, 260, font, 100); HttpHeaders headers = new HttpHeaders(); String fileName=new String("订单二维码.png".getBytes("UTF-8"),"iso-8859-1");//为了解决中文名称乱码问题 headers.setContentDispositionFormData("attachment", fileName); headers.setContentType(MediaType.APPLICATION_OCTET_STREAM); byte[] bytes = out.toByteArray(); input.close(); out.close(); return new ResponseEntity<byte[]>(bytes, headers, HttpStatus.CREATED); } catch (Exception e) { e.printStackTrace(); } return null; }
原因是IE对状态码:201不支持,可以修改为200.
在Java代码中表现为 HttpStatus.CREATED 修改为 HttpStatus.OK
相关推荐
3. **Flash与HTML5的混合使用**:对于不支持HTML5 File API的浏览器(如旧版IE),Uploadify.js可能需要依赖Flash来实现文件上传。开发者可能调整了代码,使其在检测到不支持HTML5的浏览器时自动切换到Flash模式。 ...
本文将深入探讨如何通过不同的技术和策略来“完美解决IE6不支持hover的方法”。 1. **CSS Hack** 由于IE6对CSS的理解与其他浏览器有所不同,我们可以利用CSS Hack来针对性地为IE6编写代码。例如,可以使用`_...
离线安装意味着你可以在有网络的情况下下载安装文件,然后在没有网络的设备上进行安装。这种方式避免了在线升级过程中可能出现的网络中断问题,同时也节省了网络流量。 2. **准备离线安装包** 从提供的压缩包文件...
标题和描述中提到的“IE8 iertutil & IE7 iertutil 下载”指的是Internet Explorer 8(简称IE8)和Internet Explorer 7(简称IE7)中的iertutil组件的下载需求。iertutil是微软IE浏览器的一部分,是一个重要的系统...
"websocket支持IE8专用配置文件"这个标题暗示了我们讨论的是WebSocket在旧版本浏览器,特别是Internet Explorer 8(IE8)中的兼容性问题。IE8并不原生支持WebSocket,因为WebSocket协议是在HTML5规范中定义的,而IE8...
标题“IE浏览器下载文件完成0%怎么办.docx”和描述提到了一个常见的技术问题,即用户在使用Internet Explorer(IE)浏览器下载文件时遇到了进度一直停留在0%的情况。以下是一些详细步骤和相关知识点,帮助解决这个...
最近在用IE8访问QC10,当加载完插件在登陆时IE就进入崩溃状态,按照论坛上重置IE设置、修复IE等方法均没有解决,原来和ie8访问支付宝页面是一样的问题,解决方法如下 Internet选项—高级—取消勾选“启用内存保护...
5. **测试IE模式**:现在,当你在Edge中访问一个需要IE支持的网址时,浏览器会自动检测并建议切换到“IE模式”。你也可以手动通过右键点击地址栏,选择“在Internet Explorer模式下重新加载”来强制切换。 请注意,...
6. **问题排查**:如果升级过程中遇到问题,可以尝试在安全模式下安装,或者查阅微软官方支持文档寻求解决方案。有时,某些第三方软件可能与新版本不兼容,需要在升级后进行调整或卸载。 总的来说,将Windows XP的...
标题中的“IE支持CSS3 HTML5插件”指的是在Internet Explorer(简称IE)浏览器中,由于其自身对CSS3和HTML5新特性的支持不足,需要借助特定的插件来实现对这些现代Web标准的兼容。这两项技术,CSS3和HTML5,是Web...
1. IE%20XP7.ico:这可能是一个在Windows XP系统风格下的IE图标,.ico格式是Windows系统中用于图标的标准文件类型,支持多种尺寸和颜色深度。 2. IE%20PimpeD.png:可能是“Pimped”风格的IE图标,.png是一种透明度...
这主要是由于IE9和IE10对某些CSS特性支持不足以及对文件加载机制的差异导致的。本篇将详细解析这个问题及其解决方案。 首先,我们需要理解IE9和IE10对CSS的处理方式。这两个版本的IE采用了不同的渲染引擎,与现代...
总之,IE11 for Win7 64位离线安装包提供了一种方便快捷的方式,让Windows 7用户能够在离线状态下安装和更新这个重要的浏览器,享受到更快速、更安全的浏览体验。同时,对于企业或个人用户来说,离线安装包也是高效...
在实现WebSocket与IE9的兼容性时,通常需要借助Flash技术,因为IE9不原生支持WebSocket。Flash的Socket API可以模拟WebSocket的双向通信,提供了一种在旧版IE浏览器上实现WebSocket功能的途径。因此,"WebSocketDemo...
总之,面对与iertutil.dll相关的任何问题,首先要做的是确保系统的安全,然后根据错误的具体情况采取适当的修复措施,包括但不限于重新安装浏览器、恢复文件或查找专门的解决方案文档。同时,考虑升级到最新版本的...
1. 确保操作系统兼容:IE9仅支持Windows Vista SP2及以上版本的操作系统,不适用于Windows XP。 2. 检查病毒扫描:在解压或运行任何下载的文件之前,务必进行病毒扫描,以防止恶意软件。 3. 创建系统还原点:在...
### MT8100IE如何下载程序:详细指南 #### 一、前言 随着工业自动化技术的发展,触摸屏作为人机交互的重要组成部分,在各种工业控制领域得到了广泛应用。MT8100IE作为一款高性能的触摸屏产品,其强大的功能和易用性...
根据提供的文件信息,我们可以...总之,面对“IE上不能打字”的问题,我们需要从多个角度进行排查,包括浏览器设置、输入法兼容性、DLL文件状态以及安全性等方面。通过综合考虑这些因素,通常能够找到有效的解决方案。
- 修改服务器安装目录下的`start_a.js`和`start_b.js`文件,以支持特定版本的IE浏览器(IE6、IE7、IE8)。具体步骤为: ```javascript var fMSIE678 = (ua.lastIndexOf('MSIE6.0') != -1) || (ua.lastIndexOf('...