poniedziałek, 30 stycznia 2012

Kilka słów o MIME

Mim w Sheffield
Internet Media Type, szerzej znany jak typ MIME i wartość Content-Type. Jest to standaryzowana baza rodzajów plików, ma ona pomóc w komunikacji między serwerami i klientami. Zwykle te pierwsze podają dane tym drugim, które z kolei muszą jakoś zinterpretować plik, co jest sednem całej sprawy.

To tyle jeśli chodzi o podstawy i teorię, w praktyce bywa różnie. Wraz z rozwojem nowych technologii pojawiają się kolejne problemy z ich obsługą.

JavaScript

Do niedawna był sygnalizowany poprzez:
text/javascript
i do teraz jest to najpopularniejsza forma, choć najpoprawniejszą jest
application/javascript
Zamieszanie jest tym większe, że można się spotkać z formami niestandardowymi

application/x-javascript
X po slash`u stosuje się zwykle przy typach nie ujętych w bazie.


Czcionki

Mimo co raz większej popularności osadzanych czcionek w IMT nadal brak rodziny typów
font/x
jest to poniekąd pokłosie jednej z bitew w standaryzacyjnej wojnie między Mozillą (WOFF) i Microsoft (EOT), którą najwyraźniej zwyciężył twórca Liska.
Póki co nie zaleca się używania nawet
application/font-woff
application/x-font-woff
Jeśli chodzi o EOT, który jeszcze nam się przyda w przypadku Internet Explorer < 9 to korzysta on z oficjalnego typu:
application/vnd.ms-fontobject
Ponad to jest jeszcze OTF, równie pokrzywdzony jak WOFF, gdzie zamiast ładnego
font/opentype
application/x-opentype
a o czcionkach definiowanych w SVG lepiej zapomnieć.

HTML i XHTML

Na początku było
text/html
i jest tak nadal... dla HTML. XHTML choć niósł szczytne idee to trochę namieszał.
Generalnie powinno być (szczególnie dla XHTML 1.1)
application/xhtml+xml
ewentualnie
application/xml
ale kIEpski < 9 się na tym wykładał.

Pozostałe

Z resztą generalnie nie ma już takich problemów, CSS to
text/css
SVG to po prostu
image/svg+xml
JPEG
image/jpeg
i tak dalej...