У меня есть веб-приложение, которое позволяет пользователю загружать файлы, а затем просматривать их в браузере. Это делается путем отображения их в строке с IFrame. Это прекрасно работает для всех типов файлов (например, .doc, .xls, .pdf), кроме форматов Office 2007 .docx и .xlsx, которые запускают приложение в новом окне.
Я использую эти значения для заголовка «Content-Type»:
docx - "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
xlsx - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
Заголовок «Content-Disposition» - «встроенный; filename = example.docx».
Это классический ASP-скрипт, который возвращает необработанный файл в ответе, запрошенный через атрибут 'src' IFrame и обслуживаемый IIS 6. У меня не установлен Office 2007 на моем ПК, но у меня Пакет обеспечения совместимости Office 2007. Однако это также было протестировано на клиенте с Office 2007, и проблема остается.
Как я могу заставить эти типы файлов открывать inline в браузере, а не открывать новое окно?
Любая помощь приветствуется.
EDIT:
Я должен был упомянуть, что это нужно только для работы в IE8.