Существует ли универсальный тип MIME для всех файлов изображений?
Обычно нет, но есть несколько исключений, задокументированных позже в этом ответе.
Вам нужен MIME-тип, чтобы знать, как обрабатывать файл (без необходимости читать заголовок файла).
Заметки:
Не все файлы изображений имеют заголовок, который определяет их тип.
Например, файлы SVG - это просто файлы XML. Таким образом, без правильного mimetype или расширения не было бы способа правильно определить тип файла.
Типы MIME указаны как Content-Type / subtype
Тип Mime отсутствует image/generic
(полный список подтипов зарегистрированных изображений IANA см. Ниже).
Означает ли это, что есть MIME-тип для нескольких файлов изображений?
Не существует сингла, Content-Type/subtype
который бы охватывал несколько форматов изображений.
Теоретически вы можете использовать неизвестный подтип, такой как, image/xyz
но W3C прямо говорит:
«Типа содержимого image/xyz
достаточно, чтобы сообщить пользовательскому агенту, что данные являются изображением, даже если пользовательский агент не знает определенного формата изображения xyz
...» такое действие может быть целесообразным для нераспознанных подтипов текста, но не для непризнанных подтипов изображения или аудио "
В целом, Content-Type верхнего уровня используется для объявления общего типа данных, в то время как подтип определяет конкретный формат для этого типа данных.
Таким образом, Content-Type «image / xyz» достаточно, чтобы сообщить пользовательскому агенту, что данные являются изображением, даже если пользовательский агент не знает о конкретном формате изображения «xyz».
Такая информация может использоваться, например, для принятия решения о том, показывать или нет пользователю необработанные данные из нераспознанного подтипа - такое действие может быть целесообразным для нераспознанных подтипов текста, но не для нераспознанных подтипов изображения или звука.
По этой причине зарегистрированные подтипы аудио, изображений, текста и видео не должны содержать встроенную информацию, которая действительно имеет другой тип. Такие составные типы должны быть представлены с использованием типов «multipart» или «application».
Source W3C - Поле заголовка типа содержимого
Могу ли я использовать подстановочный знак, как image/*
для моего особого случая?
так что это может быть использовано для моих целей без необходимости указывать единственные расширения файлов / mimes?
Да. Как вы указали, подстановочный знак может использоваться при указании «записи рабочего стола» для рабочих сред KDE и GNOME.
Тем не менее, обратите внимание, что Key = MimeType
устарела, поскольку есть новый стандарт для этого.
Type=MimeType
устарела, поскольку теперь существует новый стандарт для этого, см. спецификацию базы данных Shared MIME-info для получения дополнительной информации. В результате шаблоны ключей (различные расширения имен файлов, связанные с типом MIME) и DefaultApp (приложение по умолчанию, связанное с этим типом MIME) также устарели.
Источник Спецификация запись Desktop
Вы также можете использовать шаблоны подстановки для типов пантомимы в IIS, но рекомендуется не делать этого:
Вы также можете настроить IIS для обслуживания неопределенных типов файлов, добавив подстановочный знак (*) MIME-тип.
Не используйте групповые MIME-типы на производственных серверах. Это может привести к тому, что IIS будет обслуживать нераспознанные файлы и отображать конфиденциальную информацию для пользователей.
MIME-типы с подстановочными знаками предназначены для целей тестирования или в тех случаях, когда фильтры Internet Server API (ISAPI) были специально разработаны для обработки этих сценариев с подстановочными знаками, например, ISAPI с настраиваемой аутентификацией.
Источник Создание глобальных типов MIME
дальнейшее чтение
image/*
работать (как в браузерах)?