jhu*_*ter 3 c# asp.net zip internet-explorer
我继承了一个旧的应用程序,它将zip文件存储在数据库中,需要检索此文件.在Firefox中工作正常,我可以打开zip并且里面的每个文件都很好.当我在IE7中运行它时,我收到以下错误.
Internet Explorer无法从localhost下载ProductContentFormImage.aspx.
Internet Explorer无法打开此Internet站点.请求的网站不可用或无法找到.请稍后再试.
我正在使用下面的代码.
byte[] content = (byte[])Session["contentBinary"];
Response.ClearContent();
Response.ClearHeaders();
Response.Clear();
Response.Buffer = true;
Response.Expires = 0;
Response.ContentType = "application/zip";
Response.AddHeader("Content-Length", content.Length.ToString());
Response.AddHeader("Content-Disposition", "attachment; filename=content.zip");
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.BinaryWrite(content);
Response.End();
Run Code Online (Sandbox Code Playgroud)
这是一个特定于IE的奇怪小错误.
基本上,当您将到期时间设置为0时,问题就出现了.
IE基本上经历了以下过程:
IE确定该文件是"下载"的,这会导致IE打开"文件下载"弹出窗口.
一旦用户点击"打开"或"保存",IE就会尝试下载该文件,但由于它设置为立即过期,因此IE会跳闸.
将您的到期时间设置为一个非零的小数字,例如1分钟,您应该会看到问题消失.
| 归档时间: |
|
| 查看次数: |
1141 次 |
| 最近记录: |