У нас есть страница для скачивания, где пользователи могут скачать PDF документ. Эта страница в настоящее время используется как HTTPS. Под Safari только (как для Windows, так и для Mac) загрузка завершится неудачно в 99% случаев после загрузки примерно на 3/4 (однажды в голубой луне это будет работать) Проблема немедленно исчезнет, если мы заменим часть «https» URL-адреса на «http».
Код выглядит следующим образом, я считаю, что стандартный вывод файла .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 раз.
Есть идеи? У нас около 4000 посетителей в месяц в Safari, поэтому мы не можем игнорировать это.