springmvc 解决下载文件浏览器兼容性 IE Chrome
springmvc 解决下载文件浏览器兼容性 IE Chrome
渔樵耕读 发表于8个月前
springmvc 解决下载文件浏览器兼容性 IE Chrome
  • 发表于 8个月前
  • 阅读 25
  • 收藏 1
  • 点赞 0
  • 评论 0

移动开发云端新模式探索实践 >>>   

springmvc文件下载 之前在chrome上测试的没问题,换到ie上就不行了。 识别不出来文件名

@RequestMapping(value = "/downloaddoc.do")
	public ResponseEntity<byte[]> download(HttpServletRequest request, @RequestParam("keyid") String keyid, Model model)
			throws Exception {
		// 下载文件路径
		Persondocument doc = appledocService.getFile(keyid);

		HttpHeaders headers = new HttpHeaders();
		// 下载显示的文件名,解决中文名称乱码问题
		String downloadFielName = new String(doc.getFilename().getBytes("UTF-8"), "iso-8859-1");
		// 通知浏览器以attachment(下载方式)打开图片
		headers.setContentDispositionFormData("attachment", downloadFielName);
		// application/octet-stream : 二进制流数据(最常见的文件下载)。
		headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
		return new ResponseEntity<byte[]>(doc.getFiledata(), headers, HttpStatus.CREATED);
	}

原因是IE 不能支持HttpStatus.CREATED, 改成

return new ResponseEntity<byte[]>(doc.getFiledata(), headers, HttpStatus.OK);

就可以兼容ie浏览器了。

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
渔樵耕读
粉丝 37
博文 29
码字总数 8352
×
渔樵耕读
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: