Существует ли универсальный тип MIME для всех файлов изображений?
Я знаю, что могу использовать определенные типы MIME, перечисленные здесь, например, или универсальный MIME-тип для любого файла, такого как application/octet-stream
, но есть ли общий MIME-тип для всех файлов изображений?
(Я хочу отредактировать .desktop
файл в Linux Mint KDE, чтобы создать запись в контекстном меню "Действие" в Dolphin File Manager, которая будет отображаться только для файлов изображений.)
3 ответа
Существует ли универсальный тип MIME для всех файлов изображений?
Обычно нет, но есть несколько исключений, задокументированных позже в этом ответе.
Вам нужен MIME-тип, чтобы знать, как обрабатывать файл (без необходимости читать заголовок файла).
Заметки:
Не все файлы изображений имеют заголовок, который определяет их тип.
Например, файлы SVG- это просто файлы XML. Таким образом, без правильного mimetype или расширения не было бы способа правильно определить тип файла.
Типы MIME указаны как Content-Type / subtype
Там нет Mime Type
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.
Тем не менее, обратите внимание, что ключ =MimeType
устарел, поскольку есть новый стандарт для этого.
Type=MimeType
устарела, поскольку теперь существует новый стандарт для этого, см. спецификацию базы данных Shared MIME-info для получения дополнительной информации. В результате шаблоны ключей (различные расширения имен файлов, связанные с типом MIME) и DefaultApp (приложение по умолчанию, связанное с этим типом MIME) также устарели.
Спецификация входа рабочего стола
Вы также можете использовать шаблоны подстановки для типов пантомимы в IIS, но рекомендуется не делать этого:
Вы также можете настроить IIS для обслуживания неопределенных типов файлов, добавив подстановочный знак (*) MIME-тип.
Не используйте групповые MIME-типы на производственных серверах. Это может привести к тому, что IIS будет обслуживать нераспознанные файлы и отображать конфиденциальную информацию для пользователей.
MIME-типы с подстановочными знаками предназначены для целей тестирования или в тех случаях, когда фильтры Internet Server API (ISAPI) были разработаны специально для обработки этих сценариев с подстановочными знаками, например, ISAPI с настраиваемой аутентификацией.
Источник Создание глобальных типов MIME
дальнейшее чтение
- IANA - Зарегистрированные типы мультимедиа - изображение (тип содержимого изображения и подтипы)
- W3C - Поле заголовка типа содержимого
Согласно этому SO-Ответу, нет общего MIME-типа. Проблема в том, что MIME-тип всегда состоит из типа, подтипа и необязательного параметра: Type/Subtype; Parameter
(см. здесь). Вы хотите использовать только тип, но по определению требуется подтип, и нет общего подтипа. Список всех типов изображений можно найти здесь.
согласно Adobe, вы можете использовать любое из этого
https://experienceleague.adobe.com/docs/experience-manager-65/assets/administer/assets-formats.html?lang=en#supported-mime-typeshttps://experienceleague.adobe.com/docs/experience-manager-64/assets/dynamic/config-dms7.html?lang=en