在进行Web开发时,可能遇到遇到以下几种需求:

1、希望某类或者某已知MIME 类型的文件(比如:*.gif;*.txt;*.htm)能够在访问时弹出“文件下载”对话框。

2、希望客户端下载时以指定文件名显示。

3、希望某文件直接在浏览器上显示而不是弹出文件下载对话框。

对于上面的需求,使用Content-Disposition属性就可以解决。

content-type 指示响应内容的格式

一般有四种方式:

  1. Content-Type: text/html;
  2. Content-Type: application/octet-stream;
  3. Content-Type: application/json;charset:utf-8;
  4. Content-Type: application/x-www-form-urlencoded;charset:utf-8;

content-disposition 指示如何处理响应内容。

一般有两种方式:

  1. inline:直接在页面显示
  2. attchment:以附件形式下载

示例:

文件下载

response.setHeader("Content-Disposition", "attchment;fileName=文件名.jpg");

文件预览

response.setHeader("Content-Disposition", "inline;fileName=文件名.jpg");