У меня есть страница, на которой, когда пользователь нажимает кнопку, динамически генерируется PDF-файл и предлагается его загрузить.
Это код, который позволяет пользователю скачать pdf:
// Omitted code that generates the pdf bytes
response.ContentType = "application/octetstream";
response.AppendHeader("Content-Disposition", "attachment; filename=" + filename);
response.BinaryWrite(pdfBytes);
response.End();
На моей машине и многих других, использующих смесь Chrome, IE 7/8 / 9b и Firefox, это работает должным образом; пользователь нажимает кнопку, файл PDF загружается.
В некоторых случаях IE7 наши пользователи сообщают, что получают сообщение об ошибке:
"Internet Explorer не может загрузить Publish.aspx с thesite.com
Internet Explorer не смог открыть этот интернет-сайт. Запрашиваемый сайт либо недоступен, либо не может быть найден. Пожалуйста, попробуйте позже ".
Publish.aspx - это страница, на которой находится кнопка, поэтому страница доступна . IE должен загружать PDF.
Что-то не так с приведенным выше кодом, который может быть причиной этого на некоторых машинах? Или это связано с конкретными настройками безопасности / ОС / браузера?
EDIT:
Это заголовки ответа от fiddler:
HTTP/1.1 200 OK
Cache-Control: no-cache, no-store, must-revalidate
Pragma: no-cache
Content-Type: application/octetstream
Expires: -1
Server: Microsoft-IIS/7.5
Content-Disposition: attachment; filename=myPdf.pdf
X-AspNet-Version: 2.0.50727
X-Powered-By: ASP.NET
Date: Fri, 12 Nov 2010 09:48:06 GMT
Content-Length: 45772