我正在尝试通过浏览器返回一个zip文件作为流。这适用于其他类型的文件(例如Excel文件)但是当我开始处理zip文件时,我无法让我的浏览器认识到它是一个zip。
Firefox和IE都在我的测试机器上运行,询问用什么程序打开文件。资源管理器被设置为zip文件关联的默认值。
IE不会报告很多,但Firefox告诉我文件类型是什么
应用程序/压缩
据我所知,是zip文件的正确mime类型。我唯一没有设置的是扩展名,因此该文件只是被称为“Test”而不是“Test.zip”,但据我所知,应该都是由mime类型计算出来的。
任何人对可能出现的问题都有任何想法?
答案 0 :(得分:5)
您应该发送文件,确保包含文件扩展名:
Content-disposition: attachment; filename=Test.zip
作为标题。
在C#中:
Response.ContentType = "application/zip";
Response.AddHeader("Content-Length", contentLength.ToString());
Response.AddHeader("Content-disposition", "attachment; filename=" + fileName);
if (Request.UserAgent.Contains("MSIE"))
{
Response.AddHeader("Content-Transfer-Encoding", "binary");
}
答案 1 :(得分:0)
如果您可以修改MIME类型,请尝试使用application / x-zip。