Загрузка файла имеет MIME-тип «application / x2x-download» - что это? - PullRequest
4 голосов
/ 02 марта 2010

Мой сайт Rails позволяет пользователям загружать документы, я использую плагин attachment_fu. У меня есть список разрешенных типов содержимого [MIME], которые я разрешаю - стандартные форматы изображений, документы Office, PDF и т. Д. У меня есть пользователь, который не может загрузить какие-либо документы PDF, потому что проверка не проходит, просматривая журналы attachment_fu считает, что MIME тип "application / x2x-download". Браузер пользователей - Firefox на Windows XP. Когда я пытаюсь загрузить PDF самостоятельно, используя Firefox на OS X или Safari или IE 6/7/8, он работает просто отлично. Кажется, просто проблема с ее браузером.

Я погуглил этот тип MIME, и, похоже, его не существует.

Теоретически, я мог бы игнорировать тип MIME, который сообщает клиент, и попытаться идентифицировать файл сам, возможно, выложить в команду file -b --mime-type, но это только кажется излишним.

Другой популярный подключаемый модуль Rails, Paperclip, сам не выполняет идентификацию MIME, а также пытается доверять браузеру клиента.

Что ты думаешь? Игнорировать клиента и [попытаться] идентифицировать загрузку самостоятельно или попытаться выяснить, почему браузер этого пользователя устанавливает совершенно недопустимый тип MIME?

1 Ответ

1 голос
/ 02 марта 2010

Многие сторонние приложения могут изменять настройки типа MIME клиента (у меня было свое собственное приключение с приложением Amazon для загрузки MP3, изменяющим типы MIME), поэтому вполне вероятно, что у вашего пользователя есть что-то подобное (может быть, что-то из x2x программного обеспечения). ).

Я бы порекомендовал придерживаться mime / type в качестве средства информирования ваших пользователей о том, что является и что не является действительным, с вторичной проверкой с использованием ruby ​​filemagic в проверке.

...