我在項目中遇到了一個問題。我的頁面上有兩個按鈕,一個用於下載pdf,另一個用於下載zip。這些下載適用於除IE8以外的所有瀏覽器(IE9作品)。下載zip或pdf不能在IE8上工作
在IE8中,有一條消息表示「爲了保護您的安全......」。當我點擊「下載此文件」時,瀏覽器刷新頁面,我失去了我所做的一切。但是當我再次嘗試下載文件時,瀏覽器讓我這樣做。
有一個截圖:
有我的代碼:
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
if (IsPostBack)
return;
if (Request.QueryString["outputpdf"] == "1" && !string.IsNullOrEmpty(PdfReportFilePath))
{
OutputPdfFile(PdfReportFilePath);
PdfReportFilePath = string.Empty;
Response.End();
}
if (Request.QueryString["outputexport"] == "1" && !string.IsNullOrEmpty(RxMapSession.ExportedFilePath))
{
OutputExport(RxMapSession.ExportedFilePath);
RxMapSession.ExportedFilePath = RxMapSession.ExportedFileName = string.Empty;
Response.End();
}
initChart();
}
private void OutputExport(string exportedFilePath)
{
Response.ContentType = "application/zip";
Response.AppendHeader("Content-Disposition", "attachment; filename=" + Path.GetFileName(exportedFilePath));
Response.WriteFile(exportedFilePath);
}
private void OutputPdfFile(string reportFullPath)
{
string fileName = reportFullPath.Split('\\').Last();
Response.ContentType = "application/pdf";
Response.AppendHeader("Content-Disposition", "attachment; filename=" + fileName);
Response.WriteFile(reportFullPath);
Response.End();
}
你有,爲什麼我對IE8這個問題的任何想法?
這是XP上IE8的客戶端「問題」。你不能在你的代碼中做任何事情。一些用戶也會遇到問題。 – TGlatzer
我在Windows Server 2008上試過這個。我不知道我的客戶的操作系統。 –
服務器可能啓用了「Internet Explorer增強安全性」。 – TGlatzer