Ответ 1
У нас была аналогичная проблема в ie8, проблема в том, что файл выполняется в кеше и не найден. Чтобы проверить это, установите Cache-Control: no-cache в вашем объекте ответа.
Я использую ASP.NET с веб-формами, что-то, что должно быть очень просто, сводит меня с ума, аналогичные вопросы были заданы, но никто из них не помог мне, IE отказывается загружать мои файлы.
Замечания:
Это мой код:
Response.ClearHeaders();
Response.ClearContent();
Response.ContentType = "Application/pdf";
Response.AddHeader("Content-Disposition", "attachment; filename=" + fileName);
Response.BinaryWrite(buffer);
Response.End();
Это заголовки, которые я получил от IE:
Значение ключа
Ответ HTTP/1.1 200 OK
Cache-Control private
Content-Type Application/PDF
Сервер Microsoft-IIS/7.5
Вложение Content-Disposition; имя файла = myfile.pdf
X-AspNet-версия 4.0.30319
X-Powered-By ASP.NET
Дата Пт, 10 апр 2015 22:44:40 GMT
Content-Length 691892
UPDATE
Кажется, что это проблема с конфигурацией сервера, потому что тот же код будет работать нормально на моем рабочем сервере, но не на моем сервере разработки. Таким образом, мой клиент не будет жаловаться на это, так или иначе, я хочу исправить его в своей среде разработки, как только у меня будет время, я буду исследовать немного больше, если найду решение, которое я опубликую здесь.
У нас была аналогичная проблема в ie8, проблема в том, что файл выполняется в кеше и не найден. Чтобы проверить это, установите Cache-Control: no-cache в вашем объекте ответа.
Это не точный ответ, но надеюсь, что он может открыть некоторые способы найти точный.
В то время как googling я обнаружил, что это может быть связано с выпуском обновлений безопасности от Microsoft для IE.
Microsoft выпустила систему безопасности обновление для IE11 8 июля 14, которое имеет ошибку, влияющую на загрузку.
И вот Microsoft Connect Link, которые упоминаются в разделе active.
Пожалуйста, поделитесь точным решением, как только найдете его.
Ура!!
Я делаю что-то подобное в своем приложении. Попробуйте удалить заголовок content-disposition
и измените Application/pdf
на Application/pdf
. Вам также, вероятно, не нужно Response.End()
, хотя я сомневаюсь, что это вызывает проблему.
У меня были подобные проблемы в прошлом, я бы попытался установить длину содержимого ответа явно.
Response.AddHeader("Content-Length", buffer.Length.ToString())