Comprendre les types MIME en 2 minutes
Ils sont utilisés partout, et notamment dans le web, la norme MIME est simple à comprendre, mais indispensable !
Article publié le 02/10/2023, dernière mise à jour le 06/10/2023
Le sigle MIME signifie « Multipurpose Internet Mail Extension », c’est un standard qui permet de spécifier le type d’un média/fichier, à l’origine utilisé pour les fichiers envoyés en pièce jointe d’un e-mail.
On parle parfois simplement de « media types »
Aujourd’hui de nombreuses technologies s’appuient sur le standard MIME, c’est notamment le cas pour le protocole HTTP.
Le format
Un type MIME est très flexible en termes de contenu, car il permet de définir des types de médias personnalisés, mais il est indispensable de respecter son format.
Chaque média est défini par :
- un type
- un sous-type
- un paramètre (optionnel)
Sous le format suivant :
# format
<type>/<subtype>;[parameter]
# exemple
image/png
# exemple avec paramètre
text/html;charset=UTF-8
La plupart des types MIME ne nécessitent pas de paramètre, mais il est important de savoir que cela existe.
Les sous-type personnalisés
Ce qui a permis au standard MIME d’être toujours valable après autant d’années, c’est le fait qu’il soit facilement extensible.
Les types principaux sont eux au nombre de dix, avec notamment :
- application
- image
- video
- text
- …
Mais les formats, eux, peuvent être personnalisés grâce à des suffixes.
Pour tous les formats non-standards, le préfixe à utiliser est « x », comme par exemple pour les fichiers .ico :
image/x.icon
Et pour les formats propriétaires, comme ceux de Microsoft, on utilise le préfixe "vnd" pour "vendor" :
application/vnd.ms-excel
À noter que parfois le préfix est séparé par un « - » au lieu de « . »
La standardisation
Certains formats de fichier qui prennent de l’ampleur sont ajoutés au standard après un certains temps.
C’est le cas pour les fichiers Markdown qui sont passés de text/x.markdown à text/markdown.
Pourquoi ne pas utiliser l’extension du fichier ?
Il est vrai que la majorité des fichiers possèdent un nom se terminant par une extension représentant leur format, comme an-example-picture.png
Mais il existe de nombreuses situations où le fichier est accessible simplement avec un identifiant
Imaginons l’URL fictive suivante : https://example.com/images/user34
Le navigateur ne sera pas capable d’interpréter correctement ce fichier pour l’afficher s’il n’est pas accompagné par l’en-tête HTTP :
Content-Type: image/jpeg;
Quelques exemples courants :
Images
- image/jpeg
- image/png
- image/gif
- image/webp
Vidéos
- video/mp4
- video/mpeg
Application
- application/javascript
- application/json
Texte
- text/plain
- text/html
Aucun commentaire pour l'instant