MIME类型补充

Content-disposition是MIME协议的扩展,由于多方面的安全性考虑没有被标准化,所以可能某些浏览器不支持,比如说IE4.01
我们可以在http header上做相应的设置它以实现某些功能

 

1.  设置其值为attachment,以确保客户端能够在访问时弹出“文件下载”对话框。(某些MIME 类型的文件(比如:*.gif;*.txt;*.htm)默认是在IE内显示的,不能弹出对话框)

2.  不在头内设置filename属性,则客户端下载时可以指定文件名。

3.  设置其值为inline,使得文件直接在浏览器上显示而不是弹出文件下载对话框。


代码示例:

response.setHeader("Content-disposition", "attachment;filename=" + fileName)。

//Content-disposition为属性名。

//attachment表示以附件方式下载。如果要在页面中打开,则改为inline。

//filename指定下载的文件名,如果不填写,则文件由客户端决定

//如果为中文,则会出现乱码。解决办法有两种:

//1、使用fileName = new String(fileName.getBytes(), "ISO8859-1")语句

//2、使用fileName = HttpUtility.UrlEncode(filename, System.Text.Encoding.UTF8)语句

 

C#中的System.Web.Mime空间下提供了大量的MIME类型的枚举, 包含在System.Web.Mail.DLL文件中.

DispositionTypeNames枚举了DispositionType, (Attachment/Inline)

 

你可能感兴趣的:(浏览器,header,string,ie,c#,扩展)