互联网媒体类型(Internet media type,也称为MIME类型(MIME type)或内容类型(content type))是给互联网上传输的内容赋予的分类类型。一份内容的互联网媒体类型是由其檔案格式与内容决定的。互联网媒体类型与文件拓展名相对应,因此计算机系统常常通过拓展名来确定一个文件的媒体类型并决定与其相关联的软件。互联网媒体类型的分类标准由互联网号码分配局(IANA)发布。1996年十一月,媒体类型在RFC 2045中被最初定义,当时仅被使用在SMTP协议的电子邮件中。现在其他的协议(比如HTTP或者SIP)也都常使用MIME类型。
一个MIME类型至少包括两个部分:一个类型(type)和一个子类型(subtype)。此外,它还可能包括一个或多个可选参数(optional parameter)。比如,HTML文件的互联网媒体类型可能是
text/html; charset = UTF-8
在这个例子中,文件类型为text,子类型为html,而charset是一个可选参数,其值为UTF-8。
命名格式
一个MIME类型包括一个类型(type),一个子类型(subtype)。此外可以加上一个或多个可选参数(optional parameter)。其格式为
类型名 / 子类型名 [ ; 可选参数 ]
目前已被注册的类型名有application、audio、example、image、message、model、multipart、text,以及video。chemical是一个非官方的常用类型名。此外,非标准的类型名一般会加上x-前缀,但这种做法已经过时。
子类型名通常是一个媒体形式被冠以的名称,不过子类型名中也会有其它信息,包括厂商信息、产品信息、分类信息(子类型会被归进一个树状的分类结构中)、后缀等等。树结构分类信息以被.相互连接的字符串表示。每一个由.分隔开的部分又可以加上与其以-相连接的附加信息。此外,子类型名中也会有放在最后,与前面的内容以+相连接的后缀。因此,一个媒体类型的格式可以被更加细地表示为:
类型名 / [ 树结构分类信息(中间可能有一个或多个“.”) ] 子类型名(中间可能有一个或多个“-”) [ + 后缀 ] [ ; 可选参数 ]
这些信息遵循注册树(见下)的规定。
注册树(Registration Tree)
所有的媒体类型都是通过IANA的流程注册的。为了保证注册流程的灵活性与效率,子类型被归进了一个树结构的分类中。树结构信息被放在了子类型名的最前面,以.与其它部分分隔。现在,存在以下几种树:标准树(Standards Tree)、厂商树(Vendor Tree)、个人树(Personal or Vanity Tree)、以及非标准的x.为前缀的树。这些树最早于1996年十一月随着RFC 2048被定义出来。IETF标准行动(Standard Action)可能会创造新的注册树以满足著名的持续性组织(比如科学社区)的注册和管理需求。
标准树
标准树中的子类型名不需要树结构信息(也就是不需要带.的前缀)。
类型名 / 子类型名 [ + 后缀 ] [ ; 可选参数 ]
要注册标准树中的子类型,其必须遵从IESG直接批准的IETF规范,或者被由IANA认证的标准相关组织注册。
厂商树
厂商树中包含与公开使用的产品相联系的媒体类型。其使用vnd.前缀。在前缀之后必须是著名厂商的名称或是IANA认证厂商的名称加上表示文件类型和/或内容的文字。
类型名 / vnd.子类型名 [ + 后缀 ] [ ; 可选参数 ]
比如与Debian项目组织提供的dpkg相关联的.deb文件的MIME类型是:
application/vnd.debian.binary-package
其中,debian是厂商(生产方)名称,而binary-package是对文件类型和内容的描述。
“厂商”与“生产方”在这个语境下是相同的概念。工业财团和非盈利组织也可以注册厂商树中的媒体类型。任何想要传播与某种软件紧密联系的文件格式的人都可以注册厂商树中的子类型,但是这个子类型是属于该软件或是文件格式的生产方的。这种情况下,厂商可以选择在任何时间声明自己拥有第三方进行的注册的所有权。(相當於application/javascript但是嚴格的處理規則)
- application/EDI-X12:EDI 資料
- application/EDIFACT:EDI EDIFACT資料
- application/javascript:ECMAScript/JavaScript一般来说,这种类型标识的文件不应该与特定应用程序关联。与Apache等软件包过去的假设相反,这种类型不应该应用于未知文件。在这种情况下,服务器或应用程序不应指示内容类型,因为这可能是不正确的,而应该省略类型,以便让接收者猜测类型。
- application/ogg:Ogg视频文件格式
- application/pdf:PDF
- application/postscript:PostScript
- application/rss+xml:RSS feeds
- application/soap+xml:SOAP
- application/font-woff:Web Open Font Format(推薦使用;使用application/x-font-woff直到它變為官方標準)
- application/xhtml+xml:XHTML
- application/xml:XML檔案
- application/xml-dtd:DTD檔案
- application/zip:ZIP壓縮檔
- application/gzip:Gzip
Type audio
數位音訊檔案:
- audio/mp4:MP4音訊檔案
- audio/mpeg:MP3或其他MPEG音訊檔案
- audio/ogg:Ogg音訊檔案
- audio/vnd.rn-realaudio:RealAudio音訊檔案
- audio/vnd.wave:WAV音訊檔案
- audio/webm:WebM音訊檔案
- audio/flac:FLAC音訊檔案
Type image
圖檔:
- image/gif:GIF圖檔
- image/jpeg:JPEG圖檔
- image/webp: WebP圖檔
- image/svg+xml:SVG向量圖檔
- image/tiff:TIFF圖檔
- image/icon:ICO图片文件
Type message
Type model
三维计算机图形檔案:
- model/example
- model/iges:IGS 文件,IGES 文件
- model/mesh:MSH 文件,MESH 文件
- text/csv:CSV檔案
- text/html:HTML檔案
- text/javascript (過時): JavaScript; 在 RFC 4329 中定義並捨棄,以減少使用,推荐使用 application/javascript。然而,相比於 application/javascript ,在 HTML 4 和 5 中,可以使用text/javascript ,且有跨瀏覽器的支持。因為在使用 時,對於其 "type" 屬性 ,所有瀏覽器都會使用正確的預設值(儘管 HTML 4 的規格中明確要求),所以 HTML 5 中定義為選擇性的,且沒必要。
- text/plain:純文字內容
- text/vcard:vCard(電子名片)
- text/xml:XML
- video/mp4:MP4視頻檔案
- video/ogg:Ogg視頻檔案
- video/webm:WebM視頻檔案(基於Matroska基礎)
- video/x-matroska:Matroska(多媒體封裝格式)
- video/x-ms-wmv:Windows Media Video視頻檔案
- video/x-flv:Flash Video(FLV檔)
參考文獻
参见
- 影片轉換
*
外部链接
*[http://www.iana.org/assignments/media-types/ IANA的types MIME列表]
评论 (0)