Content-disposition是MIME(Multipurpose Internet Mail Extensions,多用途互联网邮件扩展类型)协议的扩展,MIME协议指示MIME用户代理如何显示附加的文件。当 Internet Explorer接收到头时,它会激活文件下载对话框,它的文件名框自动填充了头中指定的文件名。请注意,这是设计导致的,无法使用此功能将文档保存到用户的计算机上,而不向用户询问保存位置。

服务端向客户端游览器发送文件时,如果是浏览器支持的文件类型,一般会默认使用浏览器打开,比如txt、jpg等,会直接在浏览器中显示,如果需要提示用户保存,就要利用Content-Disposition进行一下处理,关键在于一定要加上attachment:

response.setHeader("Content-Disposition","attachment;filename=FileName.txt");

注意事项:

1.当代码里面使用Content-Disposition来确保浏览器弹出下载对话框的时候。 response.addHeader("Content-Disposition","attachment");一定要确保没有做过关于禁止浏览器缓存的操作。如下:

response.setHeader("Pragma", "No-cache");
response.setHeader("Cache-Control", "No-cache");
response.setDateHeader("Expires", 0);

不然会发现下载功能在opera和firefox里面好好的没问题,在IE下面就是不行,就是找不到文件。

浏览器下载附件Content-Disposition相关推荐

  1. firefox下载附件乱码问题

    原文:https://www.oschina.net/question/3288681_2244885 String agent = request.getHeader("USER-AGEN ...

  2. java 看书浏览器官_JAVA读取文件流,设置浏览器下载或直接预览操作

    最近项目需要在浏览器中通过url预览图片.但发现浏览器始终默认下载,而不是预览.研究了一下,发现了问题: // 设置response的header,注意这句,如果开启,默认浏览器会进行下载操作,如果注 ...

  3. qq邮箱下载附件时文件名显示为乱码怎么办。

     | 更新:2014-09-07 02:17 1 2 3 4 分步阅读 百度经验:jingyan.baidu.com 前段时间用ie登录winmail邮箱下载附件时文件名总是显示为乱码,还得手动改 ...

  4. java 读取浏览器_JAVA读取文件流,设置浏览器下载或直接预览操作

    最近项目需要在浏览器中通过URL预览图片.但发现浏览器始终默认下载,而不是预览.研究了一下,发现了问题: // 设置response的Header,注意这句,如果开启,默认浏览器会进行下载操作,如果注 ...

  5. 火狐资产2.6浏览器 下载_通过浏览器体验资产商店!

    火狐资产2.6浏览器 下载 https://www.assetstore.unity3d.com. https://www.assetstore.unity3d.com一样容易. If you hav ...

  6. Java使用itextpdf生成PDF文件,用浏览器下载

    浏览器下载生成PDF文件 1.引入jar包 <dependency><groupId>com.itextpdf</groupId><artifactId> ...

  7. vue中axios利用blob实现文件浏览器下载

    背景 在vue中,使用axios向后台请求数据,但只接收返回的response并不能实现浏览器下载,所以需要借助于blob实现文件的浏览器下载,分为两种情况,一种是get请求,使用params,另一种 ...

  8. java下载附件给(pdf、pptx、word、excel、图片)添加水印

    java下载附件给(pdf.pptx.word.excel.图片)添加水印 使用组件 poi itext spire.xls ooxml-schemas twelvemonkeys.imageio 等 ...

  9. python提取邮件附件_详解python实现读取邮件数据并下载附件的实例

    详解python实现读取邮件数据并下载附件的实例 实现结果图: 实现代码: #!/usr/bin/python2.7 # _*_ coding: utf-8 _*_ """ ...

最新文章

  1. LSTM还没「死」!
  2. c语言结果九位数,C语言实例:九位累进可除数
  3. PyCharm光标变粗的解决办法
  4. BPM配置故事之案例2-文本默认值
  5. Hibernate初步
  6. RHEL7/CentOS7在线和离线安装GitLab配置使用实践
  7. R-Sys.time计算程序运行时间
  8. LeetCode 104.二叉树的最大深度(递归)
  9. 教你win10系统无法识别语音识别的解决方法
  10. HTML 表格滚动锁定表头,实现固定行列
  11. PowerBuilder fileOpen()
  12. Cesium 编辑空间测量功能,任意修改
  13. 嵌入式C语言开发学习笔记 —— CSPL
  14. 外汇EA量化真的可以赚钱吗?还是新型骗局?
  15. 实时网速怎么看快慢_怎么看测出来的网速快慢
  16. PM-TPP-12C聚甲基丙烯酸十二氧烷卟啉;PM-TPP甲基丙烯酸卟啉聚合物;PM-TPP-10C聚甲基丙烯酸癸烷氧基卟啉;PM-TPP-14C聚甲基丙烯酸十四氧烷卟啉;PM-TPP-16C介绍
  17. React-router - 如何在url中带参数?在url中带参数的几种方法
  18. 【ROS2学习】二、用python编写publisher和subscriber
  19. ipad显示连接不到商店服务器,iPad无法连接App Store 打不开怎么办
  20. Android入门视频教程,抖音音视频开发

热门文章

  1. 破解自动机器学习的黑匣子
  2. 深度学习--感知机讲解
  3. 干货丨从起源到具体算法,这是一份适合所有人读的深度学习综述论文
  4. 免费教材丨第55期:Python机器学习实践指南、Tensorflow 实战Google深度学习框架
  5. 国内丨中国人工智能标准化体系建设提速
  6. 单纯形法(三)(概念部分)
  7. NIPS改名为NeurIPS的原因
  8. 深夜文献:2021腾讯科技WE大会硬核复习资料,看看如何烧脑?
  9. 张亚勤2020寄语哥伦比亚大学毕业生:引领未知时代
  10. Science发现了改变情绪的大脑受体