Как мне открыть файлы Office 2007, хранящиеся на веб-сайте?

StackOverflow https://stackoverflow.com/questions/117920

  •  02-07-2019
  •  | 
  •  

Вопрос

У меня есть веб-сайт, на который люди могут загружать документы и просматривать их позже, когда им будет удобно.Я сохраняю двоичную информацию вместе с типом mime в своей базе данных, а позже просто передаю двоичный контент прямо в браузер.

Это работает для любого типа файлов, за исключением файлов Office 2007.Когда я пытаюсь просмотреть файлы Office 2007, я получаю всплывающее окно с запросом учетных данных.После того, как я закрываю диалоговое окно (путем отмены), я получаю еще одно всплывающее окно, подобное приведенному ниже:

После того, как вы также закроете это диалоговое окно (нажав "Да"), документ, наконец, откроется.Что это дает?Неужели браузер действительно не знает, как обрабатывать файлы Office 2007?Я проверил mime-тип, который я сохраняю, и все выглядит правильно.Есть какие-нибудь идеи о том, что я могу сделать, чтобы избавиться от этих диалоговых окон при попытке открыть файл?

Это было полезно?

Решение

Проверьте это объяснение на VS Office Developer.

Это дает взлом реестра, который ваши пользователи могут применить, чтобы избавиться от этого предупреждения.

Другие советы

Вероятно, ваш браузер неправильно обрабатывает заголовки типа содержимого и / или Расположения содержимого.Я видел, как это происходило в ff, safari и IE для различных файлов, представленных различными способами.

Попробуйте загрузить файл через перехватывающий прокси-сервер (например, webscarab или burpsuite), чтобы посмотреть, как выглядят заголовки ответов.Это должно, по крайней мере, дать вам знать, связана ли проблема с браузером или сервером.

Используете ли вы content-disposition также для установки имени файла?Возможно, стоит попробовать

Возвращаете ли вы заголовок "Content-Disposition" вместе с вашим потоковым файлом?Кроме того, имейте в виду, что Firefox и более старые версии IE обрабатывают заголовок filename по-разному.

"Содержание-диспозиция:привязанность;имя файла=movie.mpg"

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top