我们有一个用户可以下载PDF文档的下载页面。此页面目前作为HTTPS提供。在Safari only (Windows和Mac)下,下载3/4后,下载将失败99%(一旦在蓝色的月亮中,它将起作用)。如果我们用“http”替换URL的“https”部分,问题会立即消失。
代码如下,我相信标准的.NET文件输出:
string pdfFile = // generate file here and get the path...
var info = new FileInfo(pdfFile);
Response.ClearContent();
Response.ClearHeaders();
Response.ContentType = "application/pdf";
Response.AppendHeader("Content-Disposition", string.Format("attachment;Filename={0}", info.Name);
Response.TransmitFile(pdfFile);
Response.Flush();
Response.Close();
此问题在Safari中仅 ; IE,Firefox和Chrome每次都正确下载文件。 Safari失败了9/10次。
有什么想法吗?我们每个月有大约4,000名访问者访问该网站,所以这不是我们可以忽略的。
答案 0 :(得分:0)
你总是可以尝试使用response.writefile(想想这首先加载到服务器上的内存中作为传递文件的附件),看它是否有帮助。