Content-Disposition 响应头,设置文件在浏览器打开还是下载(pdf文件在浏览器预览功能)

Content-Disposition 属性是作为对下载文件的一个标识字段,在rfc2616 http://www.rfc-editor.org/rfc/rfc2616.pdf 章节19.5 Additional Features中

有介绍,具体介绍请看 http://www.rfc-editor.org/rfc/rfc1806.txt

字段介绍如下:


disposition := "Content-Disposition" ":"  
               disposition-type  
               *(";" disposition-parm)  
disposition-type := "inline"  
                  / "attachment"  
                  / extension-token  
                  ; values are not case-sensitive  
disposition-parm := filename-parm / parameter  
filename-parm := "filename" "=" value; 

Content-Disposition属性有两种类型:inline 和 attachment

inline :将文件内容直接显示在页面

File file = new File("rfc1806.txt");  
String filename = file.getName();  
response.setHeader("Content-Type","text/plain");  
response.addHeader("Content-Disposition","inline;filename=" + new String(filename.getBytes(),"utf-8"));  
response.addHeader("Content-Length","" + file.length());  

Content-Disposition 响应头,设置文件在浏览器打开还是下载(pdf文件在浏览器预览功能)_第1张图片

attachment:弹出对话框让用户下载

File file = new File("rfc1806.txt");  
String filename = file.getName();  
response.setHeader("Content-Type","text/plain");  
response.addHeader("Content-Disposition","attachment;filename=" + new String(filename.getBytes(),"utf-8"));  
response.addHeader("Content-Length","" + file.length());  

Content-Disposition 响应头,设置文件在浏览器打开还是下载(pdf文件在浏览器预览功能)_第2张图片

你可能感兴趣的:(HTTP)