MIME type это короткая метка, которая указывает формат файла, например image/jpeg для фотографии JPG. MIME расшифровывается как Multipurpose Internet Mail Extensions. Официальное название сегодня - media type, поэтому вы часто видите оба термина.
Когда вы просматриваете метаданные файла, MIME type показывает, какой у файла формат. Браузеры и почтовые программы используют эту метку, чтобы решить, как открыть, показать или воспроизвести файл.
Как выглядит это значение
MIME type состоит из 2 частей: типа и подтипа, между которыми стоит косая черта без пробелов. Тип обозначает общий вид данных, а подтип - конкретный формат. В image/jpeg тип - это image, а подтип - jpeg.
В официальном списке типов IANA 11 записей: application, audio, example, font, haptics, image, message, model, multipart, text и video. Тип example используется только в примерах, поэтому в нем не регистрируются форматы.
Верхний и нижний регистр букв означают одно и то же, но MIME type обычно записывают строчными буквами. После типа может идти параметр через точку с запятой. Например, text/plain;charset=UTF-8 обозначает текстовый файл в формате plain text с кодировкой UTF-8.
Типичные значения
Вот распространенные форматы и их MIME type в интернете:
- Фотография JPG:
image/jpeg - Изображение PNG:
image/png - Документ PDF:
application/pdf - Аудио MP3:
audio/mpeg - Видео MP4:
video/mp4 - Простой текст:
text/plain - Документ Word (DOCX):
application/vnd.openxmlformats-officedocument.wordprocessingml.document
vnd. в начале подтипа Word обозначает формат вендора, то есть формат, связанный с общедоступным продуктом. Суффикс после знака плюс указывает базовый формат. image/svg+xml основан на XML, а application/epub+zip является ZIP-архивом.
Файл JPG может иметь одно из нескольких расширений, например .jpg, .jpeg или .jpe, но MIME type у него только один: image/jpeg. В официальном списке media type IANA нет записи с именем image/jpg.
Откуда берется значение
MIME type появился сначала в электронной почте. Первый стандарт MIME, RFC 1341, вышел в июне 1992 года. С MIME электронные письма смогли передавать другие наборы символов, нетекстовый контент, например изображения, и сообщения из нескольких частей.
Сегодня RFC 2045 от ноября 1996 года определяет строку Content-Type, которая описывает содержимое сообщения. Сайты отправляют такую же метку в заголовке Content-Type для каждого файла. Internet Assigned Numbers Authority (IANA) ведет официальный список media type.
Чтобы определить формат, программа может посмотреть на расширение имени файла или на первые байты файла. Расширение - это только часть имени файла, и нет гарантии, что оно корректно. Многие форматы начинаются с фиксированной последовательности байт, называемой magic number, но не все.
Какие файлы его содержат
Отчет по метаданным может показывать MIME type для многих типов файлов: фотографии, песни, видео или документа. ExifTool, популярное приложение для чтения метаданных, выводит это значение как MIMEType в своей группе File. В этой же группе находятся тип файла и расширение типа файла.
Некоторые форматы также содержат MIME type внутри файла. Электронная книга EPUB должна начинаться с небольшого файла с именем mimetype, в котором хранится application/epub+zip. В ID3-теге файла MP3 вложенная картинка указывает свой формат, например image/jpeg или image/png.
Почему это важно
Браузеры используют MIME type, а не расширение файла, чтобы решить, как обрабатывать файл из интернета. При неверной метке страница может не работать, а браузер может неправильно обработать загрузку.
Когда сайт не распознает тип файла, он обычно отправляет application/octet-stream, что означает неизвестные бинарные данные. В этом случае браузеры предлагают сохранить файл вместо открытия.