我有一个包含链接按钮的aspx页面,这些按钮会触发JavaScript来打开一个新的aspx页面,以向用户流式传输文件以供下载。
在XP SP3、IE 7和FireFox 3.5上开发和单元测试时,使用以下代码(关键是Content-Disposition标记中的“attachment”部分),两者都会弹出对话框询问我是否要保存或打开文档,这正是我想要发生的。
当我将此部署到Windows 2003服务器并导航到相同的aspx页面时,FireFox 3.5会如预期地正确要求保存/打开选项,因为这是FF中的默认操作。但是,在IE 7中导航并单击下载时,我会看到一个弹出窗口,最多可见1/8秒...然后消失了。没有提示保存/打开。如果我进入IE 7 -> 工具 -> Internet选项 -> 安全 -> 自定义级别 -> 下载,自动提示文件下载被禁用。当我勾选启用时,Save/Open提示就能正常工作了。所以我的问题是......有人找到解决方法吗?我已经尝试了许多人声称使用不同的Header标签(如cache、pragma等)来解决,但都无法避免IE默认禁用下载属性的事实。
在XP SP3、IE 7和FireFox 3.5上开发和单元测试时,使用以下代码(关键是Content-Disposition标记中的“attachment”部分),两者都会弹出对话框询问我是否要保存或打开文档,这正是我想要发生的。
private void WriteFileToBrowser(Byte[] requestFile, string filename, String m_mimeType, String m_format)
{
Response.Clear();
Response.AddHeader("Content-Disposition", "attachment;filename=" + filename + "." + m_format);
Response.ContentType = m_mimeType;
Response.BinaryWrite(requestFile);
Response.Flush();
}
当我将此部署到Windows 2003服务器并导航到相同的aspx页面时,FireFox 3.5会如预期地正确要求保存/打开选项,因为这是FF中的默认操作。但是,在IE 7中导航并单击下载时,我会看到一个弹出窗口,最多可见1/8秒...然后消失了。没有提示保存/打开。如果我进入IE 7 -> 工具 -> Internet选项 -> 安全 -> 自定义级别 -> 下载,自动提示文件下载被禁用。当我勾选启用时,Save/Open提示就能正常工作了。所以我的问题是......有人找到解决方法吗?我已经尝试了许多人声称使用不同的Header标签(如cache、pragma等)来解决,但都无法避免IE默认禁用下载属性的事实。