Существует ли общий MIME-тип для всех файлов изображений?

Существует ли общий MIME-тип для всех файлов изображений?

Я знаю, что могу использовать определенные типы MIME, перечисленные, напримерздесь, или общий тип MIME для любого файла, например application/octet-stream, но существует ли общий тип MIME для всех файлов изображений?

(Я хочу отредактировать .desktopфайл в Linux Mint KDE, чтобы создать пункт контекстного меню «Действие» в файловом менеджере Dolphin, который будет отображаться только для файлов изображений.)

решение1

Существует ли общий MIME-тип для всех файлов изображений?

Обычно этого не происходит, но есть несколько исключений, описанных далее в этом ответе.

MIME-тип необходим для того, чтобы знать, как обрабатывать файл (без необходимости читать заголовок файла).

Примечания:

  • Не все файлы изображений имеют заголовок, идентифицирующий их тип.

  • SVG-файлы, например, являются просто файлами XML. Поэтому без правильного mimetype или расширения не будет возможности правильно определить тип файла.

  • Типы MIME указываются как Content-Type/subtype.

  • Типа MIME не существует image/generic(полный список подтипов изображений, зарегистрированных IANA, см. в разделе «Дополнительная информация» ниже).


Означает ли это, что существует MIME-тип для нескольких файлов изображений?

Здесь нетодинокий Content-Type/subtypeкоторый охватывает несколько форматов изображений.

Теоретически вы можете использовать неизвестный подтип, например, image/xyzно W3C прямо говорит:

«Content-Type image/xyzдостаточно, чтобы сообщить пользовательскому агенту, что данные являются изображением, даже если пользовательский агент не имеет сведений о конкретном формате изображения xyz...» такое действие может быть разумным для нераспознанных подтипов текста,но не для нераспознанных подтипов изображений или аудио"

Как правило, Content-Type верхнего уровня используется для объявления общего типа данных, тогда как подтип определяет конкретный формат для этого типа данных.

Таким образом, Content-Type «image/xyz» достаточно, чтобы сообщить пользовательскому агенту, что данные являются изображением, даже если пользовательский агент не имеет сведений о конкретном формате изображения «xyz».

Такая информация может использоваться, например, для принятия решения о том, показывать ли пользователю необработанные данные из нераспознанного подтипа — такое действие может быть разумным для нераспознанных подтипов текста, но не для нераспознанных подтипов изображений или аудио.

По этой причине зарегистрированные подтипы аудио, изображения, текста и видео не должны содержать встроенную информацию, которая на самом деле относится к другому типу. Такие составные типы должны быть представлены с использованием типов "multipart" или "application".

ИсточникW3C — Поле заголовка Content-Type


Могу ли я использовать подстановочный знак «лайк» image/*для моего особого случая?

чтобы его можно было использовать в моих целях без необходимости указания отдельных расширений файлов/MIME?

Да. Как вы указали, при указании «Desktop Entry» для сред рабочего стола KDE и GNOME можно использовать подстановочный знак.

Однако обратите внимание, что Key= MimeTypeустарел, поскольку для него существует новый стандарт.

Type=MimeTypeустарело, так как теперь для этого есть новый стандарт, см.Спецификация общей базы данных MIME-информациидля получения дополнительной информации. В результате Keys Patterns (различные расширения имен файлов, связанные с типом MIME) и DefaultApp (приложение по умолчанию, связанное с этим типом MIME) также устарели.

ИсточникТехнические характеристики начального уровня рабочего стола

Вы также можете использовать подстановочные знаки для типов MIME в IIS, но рекомендуетсянетсделай это:

Вы также можете настроить IIS для обслуживания неопределенных типов файлов, добавив подстановочный знак (*) типа MIME.

Не используйте подстановочные MIME-типы на производственных серверах. Это может привести к тому, что IIS будет обслуживать нераспознанные файлы и отображать конфиденциальную информацию пользователям.

Подстановочные MIME-типы предназначены для целей тестирования или в сценариях, где фильтры Internet Server API (ISAPI) были разработаны специально для обработки таких подстановочных сценариев, например, настраиваемая аутентификация ISAPI.

ИсточникСоздание глобальных типов MIME


дальнейшее чтение

решение2

В соответствии сэтот ТАК ответ, нет универсального MIME-типа. Проблема в том, что MIME-тип всегда состоит из типа, подтипа и необязательного параметра: Type/Subtype; Parameter(см.здесь). Вы хотите использовать только тип, но по определению требуется подтип, а универсального подтипа нет. Список всех типов изображений можно найтиздесь.

решение3

Связанный контент