Flex SDK 3.5 - проверка mimetype файла

Есть ли способ получить mimetype файла в Flex SDK 3.5 без использования его расширения?

Мне нужно проверить, относится ли загруженный файл к определенному типу. Это для изображений или документов (PDF, ODT и т. Д.)

Все решения, которые я нашел, - это проверка его расширения. Что, если я переименую файл .odt в .jpg? Затем я могу загрузить его как изображение ...

Я должен добавить, что мы используем настольный клиент AIR и сервер Java EE. Проверка файлов решена на стороне Java, но идея состоит не в том, чтобы переходить на сервер и проверять файл, поэтому, если он недействителен, сетевой трафик вообще отсутствует.


person Fernando Briano    schedule 19.04.2010    source источник


Ответы (2)


Не совсем. Файлы не имеют встроенного типа MIME. Тип MIME произвольных данных содержимого описывается в заголовке интернет-протокола, используемого для передачи данных (например, HTTP, SMTP, RTP и т. Д.).

Единственное другое решение, которое я мог придумать в своей голове, - это использование процесса проб и ошибок, когда у вас есть предположение о типе файла, с которым вы имеете дело, и вы проверяете это предположение, фактически открывая файл (в ваш код) и тестирование на успех. Но это некрасиво.

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

person Matt Ball    schedule 19.04.2010

Самый простой способ - использовать php, если это возможно:

$fileinfo['content-type'];
person Steav    schedule 19.04.2010
comment
Мы используем Flex и Java EE. Проверка на стороне сервера выполнена, но мне нужно проверить файл на Flex, поэтому я не отправляю его на сервер без надобности. - person Fernando Briano; 19.04.2010