MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型。是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式。

背景介绍

多用途互联网邮件扩展,它是一个互联网标准,在1992年最早应用于电子邮件系统,但后来也应用到浏览器。服务器会将它们发送的多媒体数据的类型告诉浏览器,而通知手段就是说明该多媒体数据的MIME类型,从而让浏览器知道接收到的信息哪些是MP3文件,哪些是Shockwave文件等等。服务器将MIME标志符放入传送的数据中来告诉浏览器使用哪种插件读取相关文件。

MIME能够支持非ASCII字符、二进制格式附件等多种格式的邮件消息。这个标准被定义在RFC 2045,RFC 2046,RFC 2047,RFC 2048,RFC 2049等RFC中。 由RFC 822转变而来的RFC 2822,规定电子邮件标准并不允许在邮件消息中使用7位ASCII字符集以外的字符。正因如此,一些非英语字符消息和二进制文件,图像,声音等非文字消息都不能在电子邮件中传输。MIME规定了用于表示各种各样的数据类型的符号化方法。

浏览器接收到文件后,会进入插件系统进行查找,查找出哪种插件可以识别读取接收到的文件。如果浏览器不清楚调用哪种插件系统,它可能会告诉用户缺少某插件,或者直接选择某现有插件来试图读取接收到的文件,或者可能会导致系统的崩溃。传输的信息中缺少MIME标识可能导致的情况很难估计,因为某些计算机系统可能不会出现什么故障,但某些计算机可能就会因此而崩溃。

Microsoft公司应用于Windows系统下的浏览器使用ActiveX控件,而不是Netscape插件,这种浏览器不必象其它浏览器那样依靠MIME的编码。"OBJECT"标签的"CLSID"属性准确地标明了应调用哪种程序来读取接收到的文件,因此浏览器不必象"EMBED"标签那样选择一种读取程序。正因为如此,你往往会在使用带插件的浏览器时遇到MIME问题,而使用ActiveX控件的浏览器则很少出现此类麻烦。

正由于上述工作方式的差别也解释了一种现象,不知你是否发现在使用Netscape浏览器播放WAV文件时,浏览器会调用LiveConnect插件进行播放,而其它浏览器一般都使用通用的QuickTime的播放插件等来进行播放,这是因为Netscape浏览器接收文件需要读取MIME标识符,以便决定调用哪种程序来读取接收的文件,而服务器设置在Netscape浏览器中播放WAV文件应使用LiveConnect插件,因此Netscape浏览器接收到WAV格式的文件时必然就会调用LiveConnect插件,但由于其它浏览器不使用这种方式,因此它们都使用系统默认的播放WAV格式文件的播放器。当然Flash电影文件并不存在这种问题,因为只有Flash播放器才能够正确读取这种格式的文件。

在把输出结果传送到浏览器上的时候,浏览器必须启动适当的应用程序来处理这个输出文档。这可以通过多种类型MIME(多功能网际邮件扩充协议)来完成。在HTTP中,MIME类型被定义在Content-Type header中。

例如,假设你要传送一个Microsoft Excel文件到客户端。那么这时的MIME类型就是“excel”。在大多数实际情况中,这个文件然后将传送给Excel来处理(假设我们设定Excel为处理特殊MIME类型的应用程序)。

文件格式

最早的HTTP协议中,并没有附加的数据类型信息,所有传送的数据都被客户程序解释为超文本标记语言HTML 文档,而为了支持多媒体数据类型,HTTP协议中就使用了附加在文档之前的MIME数据类型信息来标识数据类型。

MIME意为多功能Internet邮件扩展,它设计的最初目的是为了在发送电子邮件时附加多媒体数据,让邮件客户程序能根据其类型进行处理。然而当它被HTTP协议支持之后,它的意义就更为显著了。它使得HTTP传输的不仅是普通的文本,而变得丰富多彩。

每个MIME类型由两部分组成,前面是数据的大类别,例如声音audio、图象image等,后面定义具体的种类。

常见的MIME类型(通用型):

超文本标记语言文本   .html text/html

xml文档   .xml text/xml

XHTML文档   .xhtml application/xhtml+xml

普通文本   .txt text/plain

RTF文本   .rtf application/rtf

PDF文档   .pdf application/pdf

Microsoft Word文件   .word application/msword

PNG图像   .png image/png

GIF图形   .gif image/gif

JPEG图形   .jpeg,.jpg image/jpeg

au声音文件   .au audio/basic

MIDI音乐文件   mid,.midi audio/midi,audio/x-midi

RealAudio音乐文件   .ra, .ram audio/x-pn-realaudio

MPEG文件   .mpg,.mpeg video/mpeg

AVI文件   .avi video/x-msvideo

GZIP文件   .gz application/x-gzip

TAR文件   .tar application/x-tar

任意的二进制数据   application/octet-stream

Internet中有一个专门组织IANA来确认标准的MIME类型,但Internet发展的太快,很多应用程序等不及IANA来确认他们使用的MIME类型为标准类型。因此他们使用在类别中以x-开头的方法标识这个类别还没有成为标准,例如:x-gzip,x-tar等。事实上这些类型运用的很广泛,已经成为了事实标准。只要客户机和服务器共同承认这个MIME类型,即使它是不标准的类型也没有关系,客户程序就能根据MIME类型,采用具体的处理手段来处理数据。而Web服务器和浏览器(包括操作系统)中,缺省都设置了标准的和常见的MIME类型,只有对于不常见的 MIME类型,才需要同时设置服务器和客户浏览器,以进行识别。

由于MIME类型与文档的后缀相关,因此服务器使用文档的后缀来区分不同文件的MIME类型,服务器中必须定义文档后缀和MIME类型之间的对应关系。而客户程序从服务器上接收数据的时候,它只是从服务器接受数据流,并不了解文档的名字,因此服务器必须使用附加信息来告诉客户程序数据的MIME类型。服务器在发送真正的数据之前,就要先发送标志数据的MIME类型的信息,这个信息使用Content-type关键字进行定义,例如对于HTML文档,服务器将首先发送以下两行MIME标识信息,这个标识并不是真正的数据文件的一部分。

Content-type: text/html

注意,第二行为一个空行,这是必须的,使用这个空行的目的是将MIME信息与真正的数据内容分隔开。

MIME利用了一个事实就是,RFC 822在消息体的内容中做了一点限制:唯一的限制就是只能使用简单的ASCII文本。所以,MIME信息由正常的Internet文本邮件组成,文本邮件拥有一些特别的符合RFC 822的信息头和格式化过的信息体(用ASCII 的子集来表示的附件)。这些MIME头给出了一种在邮件中表示附件的特别的方法。

信息剖析

一个普通的文本邮件的信息包含一个头部分(To: From: Subject: 等等)和一个体部分(Hello Mr.,等等)。在一个符合MIME的信息中,也包含一个信息头并不奇怪,邮件的各个部分叫做MIME段,每段前也缀以一个特别的头。MIME邮件只是基于RFC 822邮件的一个扩展,然而它有着自己的RFC规范集。

头字段

MIME头根据在邮件包中的位置,大体上分为MIME信息头和MIME段头。

MIME信息头有:

MIME-Version:

这个头提供了所用MIME的版本号。这个值习惯上为1.0。

Content-Type:

它定义了数据的类型,以便数据能被适当的处理。有效的类型有:text,image,audio,video,applications,multipart和message。注意任何一个二进制附件都应该被叫做application/octet- stream。这个头的一些用例为:image/jpg, application/mswork,multipart/mixed,这只是很少的一部分。

Content-Transfer-Encoding:

这是所有头中最重要的一个,因为它说明了对数据所执行的编码方式,客户/MUA 将用它对附件进行解码。对于每个附件,可以使用7bit,8bit,binary ,quoted-printable,base64和custom中的一种编码方式。7bit编码是用在US ASCII字符集上的常用的一种编码方式,也就是,保持它的原样。8bit和binary编码一般不用。对人类可读的标准文本,如果传输要经过对格式有影响的网关时对其进行保护,可以使用quoted printable 。Base64是一种通用方法,在需要决定使用哪一种编码方法时,它提供了一个不用费脑子的选择;它通常用在二进制,非文本数据上。注意,任何非7bit 数据必须用一种模式编码,这样它就可以通过Internet邮件网关!

Content-ID:

如果Content-Type是message/external-body或multipart/alternative时,这个头就有用了,它超出了本文的范围。

Content-Description:

这是一个可选的头。它是任何信息段内容的自由文本描述。描述必须使用us-ascii码。

Content-Disposition:

一个试验性的头,它用于给客户程序/MUA提供提示,来决定是否在行内显示附件或作为单独的附件。

MIME段头(出现在实际的MIME附件部分的头),除了MIME-Version头,可以拥有以上任何头字段。如果一个MIME头是信息块的一部分,它将作用于整个信息体。例如,如果Content-Transfer-Encoding显示在信息(指整个信息)头中,它应用于整个信息体,但是如果它显示在一个MIME段里,它"只能"用于那个段中。

注意:其可以对自动对收到的邮件进行解密。

类型大全

格式前面为后辍名,后面为对应的MIME型(例如:rar application/x-rar-compressed 表示。RAR对应的是application/x-rar-compressed )

  1. { ".323", "text/h323" },
  2. { ".3gp", "video/3gpp" },
  3. { ".aab", "application/x-authoware-bin" },
  4. { ".aam", "application/x-authoware-map" },
  5. { ".aas", "application/x-authoware-seg" },
  6. { ".acx", "application/internet-property-stream" },
  7. { ".ai", "application/postscript" },
  8. { ".aif", "audio/x-aiff" },
  9. { ".aifc", "audio/x-aiff" },
  10. { ".aiff", "audio/x-aiff" },
  11. { ".als", "audio/X-Alpha5" },
  12. { ".amc", "application/x-mpeg" },
  13. { ".ani", "application/octet-stream" },
  14. { ".apk", "application/vnd.android.package-archive" },
  15. { ".asc", "text/plain" },
  16. { ".asd", "application/astound" },
  17. { ".asf", "video/x-ms-asf" },
  18. { ".asn", "application/astound" },
  19. { ".asp", "application/x-asap" },
  20. { ".asr", "video/x-ms-asf" },
  21. { ".asx", "video/x-ms-asf" },
  22. { ".au", "audio/basic" },
  23. { ".avb", "application/octet-stream" },
  24. { ".avi", "video/x-msvideo" },
  25. { ".awb", "audio/amr-wb" },
  26. { ".axs", "application/olescript" },
  27. { ".bas", "text/plain" },
  28. { ".bcpio", "application/x-bcpio" },
  29. { ".bin ", "application/octet-stream" },
  30. { ".bld", "application/bld" },
  31. { ".bld2", "application/bld2" },
  32. { ".bmp", "image/bmp" },
  33. { ".bpk", "application/octet-stream" },
  34. { ".bz2", "application/x-bzip2" },
  35. { ".c", "text/plain" },
  36. { ".cal", "image/x-cals" },
  37. { ".cat", "application/vnd.ms-pkiseccat" },
  38. { ".ccn", "application/x-cnc" },
  39. { ".cco", "application/x-cocoa" },
  40. { ".cdf", "application/x-cdf" },
  41. { ".cer", "application/x-x509-ca-cert" },
  42. { ".cgi", "magnus-internal/cgi" },
  43. { ".chat", "application/x-chat" },
  44. { ".class", "application/octet-stream" },
  45. { ".clp", "application/x-msclip" },
  46. { ".cmx", "image/x-cmx" },
  47. { ".co", "application/x-cult3d-object" },
  48. { ".cod", "image/cis-cod" },
  49. { ".conf", "text/plain" },
  50. { ".cpio", "application/x-cpio" },
  51. { ".cpp", "text/plain" },
  52. { ".cpt", "application/mac-compactpro" },
  53. { ".crd", "application/x-mscardfile" },
  54. { ".crl", "application/pkix-crl" },
  55. { ".crt", "application/x-x509-ca-cert" },
  56. { ".csh", "application/x-csh" },
  57. { ".csm", "chemical/x-csml" },
  58. { ".csml", "chemical/x-csml" },
  59. { ".css", "text/css" },
  60. { ".cur", "application/octet-stream" },
  61. { ".dcm", "x-lml/x-evm" },
  62. { ".dcr", "application/x-director" },
  63. { ".dcx", "image/x-dcx" },
  64. { ".der", "application/x-x509-ca-cert" },
  65. { ".dhtml", "text/html" },
  66. { ".dir", "application/x-director" },
  67. { ".dll", "application/x-msdownload" },
  68. { ".dmg", "application/octet-stream" },
  69. { ".dms", "application/octet-stream" },
  70. { ".doc", "application/msword" },
  71. { ".docx", "application/vnd.openxmlformats-officedocument.wordprocessingml.document" },
  72. { ".dot", "application/msword" },
  73. { ".dvi", "application/x-dvi" },
  74. { ".dwf", "drawing/x-dwf" },
  75. { ".dwg", "application/x-autocad" },
  76. { ".dxf", "application/x-autocad" },
  77. { ".dxr", "application/x-director" },
  78. { ".ebk", "application/x-expandedbook" },
  79. { ".emb", "chemical/x-embl-dl-nucleotide" },
  80. { ".embl", "chemical/x-embl-dl-nucleotide" },
  81. { ".eps", "application/postscript" },
  82. { ".epub", "application/epub+zip" },
  83. { ".eri", "image/x-eri" },
  84. { ".es", "audio/echospeech" },
  85. { ".esl", "audio/echospeech" },
  86. { ".etc", "application/x-earthtime" },
  87. { ".etx", "text/x-setext" },
  88. { ".evm", "x-lml/x-evm" },
  89. { ".evy", "application/envoy" },
  90. { ".exe", "application/octet-stream" },
  91. { ".fh4", "image/x-freehand" },
  92. { ".fh5", "image/x-freehand" },
  93. { ".fhc", "image/x-freehand" },
  94. { ".fif", "application/fractals" },
  95. { ".flr", "x-world/x-vrml" },
  96. { ".flv", "flv-application/octet-stream" },
  97. { ".fm", "application/x-maker" },
  98. { ".fpx", "image/x-fpx" },
  99. { ".fvi", "video/isivideo" },
  100. { ".gau", "chemical/x-gaussian-input" },
  101. { ".gca", "application/x-gca-compressed" },
  102. { ".gdb", "x-lml/x-gdb" },
  103. { ".gif", "image/gif" },
  104. { ".gps", "application/x-gps" },
  105. { ".gtar", "application/x-gtar" },
  106. { ".gz", "application/x-gzip" },
  107. { ".h", "text/plain" },
  108. { ".hdf", "application/x-hdf" },
  109. { ".hdm", "text/x-hdml" },
  110. { ".hdml", "text/x-hdml" },
  111. { ".hlp", "application/winhlp" },
  112. { ".hqx", "application/mac-binhex40" },
  113. { ".hta", "application/hta" },
  114. { ".htc", "text/x-component" },
  115. { ".htm", "text/html" },
  116. { ".html", "text/html" },
  117. { ".hts", "text/html" },
  118. { ".htt", "text/webviewhtml" },
  119. { ".ice", "x-conference/x-cooltalk" },
  120. { ".ico", "image/x-icon" },
  121. { ".ief", "image/ief" },
  122. { ".ifm", "image/gif" },
  123. { ".ifs", "image/ifs" },
  124. { ".iii", "application/x-iphone" },
  125. { ".imy", "audio/melody" },
  126. { ".ins", "application/x-internet-signup" },
  127. { ".ips", "application/x-ipscript" },
  128. { ".ipx", "application/x-ipix" },
  129. { ".isp", "application/x-internet-signup" },
  130. { ".it", "audio/x-mod" },
  131. { ".itz", "audio/x-mod" },
  132. { ".ivr", "i-world/i-vrml" },
  133. { ".j2k", "image/j2k" },
  134. { ".jad", "text/vnd.sun.j2me.app-descriptor" },
  135. { ".jam", "application/x-jam" },
  136. { ".jar", "application/java-archive" },
  137. { ".java", "text/plain" },
  138. { ".jfif", "image/pipeg" },
  139. { ".jnlp", "application/x-java-jnlp-file" },
  140. { ".jpe", "image/jpeg" },
  141. { ".jpeg", "image/jpeg" },
  142. { ".jpg", "image/jpeg" },
  143. { ".jpz", "image/jpeg" },
  144. { ".js", "application/x-javascript" },
  145. { ".jwc", "application/jwc" },
  146. { ".kjx", "application/x-kjx" },
  147. { ".lak", "x-lml/x-lak" },
  148. { ".latex", "application/x-latex" },
  149. { ".lcc", "application/fastman" },
  150. { ".lcl", "application/x-digitalloca" },
  151. { ".lcr", "application/x-digitalloca" },
  152. { ".lgh", "application/lgh" },
  153. { ".lha", "application/octet-stream" },
  154. { ".lml", "x-lml/x-lml" },
  155. { ".lmlpack", "x-lml/x-lmlpack" },
  156. { ".log", "text/plain" },
  157. { ".lsf", "video/x-la-asf" },
  158. { ".lsx", "video/x-la-asf" },
  159. { ".lzh", "application/octet-stream" },
  160. { ".m13", "application/x-msmediaview" },
  161. { ".m14", "application/x-msmediaview" },
  162. { ".m15", "audio/x-mod" },
  163. { ".m3u", "audio/x-mpegurl" },
  164. { ".m3url", "audio/x-mpegurl" },
  165. { ".m4a", "audio/mp4a-latm" },
  166. { ".m4b", "audio/mp4a-latm" },
  167. { ".m4p", "audio/mp4a-latm" },
  168. { ".m4u", "video/vnd.mpegurl" },
  169. { ".m4v", "video/x-m4v" },
  170. { ".ma1", "audio/ma1" },
  171. { ".ma2", "audio/ma2" },
  172. { ".ma3", "audio/ma3" },
  173. { ".ma5", "audio/ma5" },
  174. { ".man", "application/x-troff-man" },
  175. { ".map", "magnus-internal/imagemap" },
  176. { ".mbd", "application/mbedlet" },
  177. { ".mct", "application/x-mascot" },
  178. { ".mdb", "application/x-msaccess" },
  179. { ".mdz", "audio/x-mod" },
  180. { ".me", "application/x-troff-me" },
  181. { ".mel", "text/x-vmel" },
  182. { ".mht", "message/rfc822" },
  183. { ".mhtml", "message/rfc822" },
  184. { ".mi", "application/x-mif" },
  185. { ".mid", "audio/mid" },
  186. { ".midi", "audio/midi" },
  187. { ".mif", "application/x-mif" },
  188. { ".mil", "image/x-cals" },
  189. { ".mio", "audio/x-mio" },
  190. { ".mmf", "application/x-skt-lbs" },
  191. { ".mng", "video/x-mng" },
  192. { ".mny", "application/x-msmoney" },
  193. { ".moc", "application/x-mocha" },
  194. { ".mocha", "application/x-mocha" },
  195. { ".mod", "audio/x-mod" },
  196. { ".mof", "application/x-yumekara" },
  197. { ".mol", "chemical/x-mdl-molfile" },
  198. { ".mop", "chemical/x-mopac-input" },
  199. { ".mov", "video/quicktime" },
  200. { ".movie", "video/x-sgi-movie" },
  201. { ".mp2", "video/mpeg" },
  202. { ".mp3", "audio/mpeg" },
  203. { ".mp4", "video/mp4" },
  204. { ".mpa", "video/mpeg" },
  205. { ".mpc", "application/vnd.mpohun.certificate" },
  206. { ".mpe", "video/mpeg" },
  207. { ".mpeg", "video/mpeg" },
  208. { ".mpg", "video/mpeg" },
  209. { ".mpg4", "video/mp4" },
  210. { ".mpga", "audio/mpeg" },
  211. { ".mpn", "application/vnd.mophun.application" },
  212. { ".mpp", "application/vnd.ms-project" },
  213. { ".mps", "application/x-mapserver" },
  214. { ".mpv2", "video/mpeg" },
  215. { ".mrl", "text/x-mrml" },
  216. { ".mrm", "application/x-mrm" },
  217. { ".ms", "application/x-troff-ms" },
  218. { ".msg", "application/vnd.ms-outlook" },
  219. { ".mts", "application/metastream" },
  220. { ".mtx", "application/metastream" },
  221. { ".mtz", "application/metastream" },
  222. { ".mvb", "application/x-msmediaview" },
  223. { ".mzv", "application/metastream" },
  224. { ".nar", "application/zip" },
  225. { ".nbmp", "image/nbmp" },
  226. { ".nc", "application/x-netcdf" },
  227. { ".ndb", "x-lml/x-ndb" },
  228. { ".ndwn", "application/ndwn" },
  229. { ".nif", "application/x-nif" },
  230. { ".nmz", "application/x-scream" },
  231. { ".nokia-op-logo", "image/vnd.nok-oplogo-color" },
  232. { ".npx", "application/x-netfpx" },
  233. { ".nsnd", "audio/nsnd" },
  234. { ".nva", "application/x-neva1" },
  235. { ".nws", "message/rfc822" },
  236. { ".oda", "application/oda" },
  237. { ".ogg", "audio/ogg" },
  238. { ".oom", "application/x-AtlasMate-Plugin" },
  239. { ".p10", "application/pkcs10" },
  240. { ".p12", "application/x-pkcs12" },
  241. { ".p7b", "application/x-pkcs7-certificates" },
  242. { ".p7c", "application/x-pkcs7-mime" },
  243. { ".p7m", "application/x-pkcs7-mime" },
  244. { ".p7r", "application/x-pkcs7-certreqresp" },
  245. { ".p7s", "application/x-pkcs7-signature" },
  246. { ".pac", "audio/x-pac" },
  247. { ".pae", "audio/x-epac" },
  248. { ".pan", "application/x-pan" },
  249. { ".pbm", "image/x-portable-bitmap" },
  250. { ".pcx", "image/x-pcx" },
  251. { ".pda", "image/x-pda" },
  252. { ".pdb", "chemical/x-pdb" },
  253. { ".pdf", "application/pdf" },
  254. { ".pfr", "application/font-tdpfr" },
  255. { ".pfx", "application/x-pkcs12" },
  256. { ".pgm", "image/x-portable-graymap" },
  257. { ".pict", "image/x-pict" },
  258. { ".pko", "application/ynd.ms-pkipko" },
  259. { ".pm", "application/x-perl" },
  260. { ".pma", "application/x-perfmon" },
  261. { ".pmc", "application/x-perfmon" },
  262. { ".pmd", "application/x-pmd" },
  263. { ".pml", "application/x-perfmon" },
  264. { ".pmr", "application/x-perfmon" },
  265. { ".pmw", "application/x-perfmon" },
  266. { ".png", "image/png" },
  267. { ".pnm", "image/x-portable-anymap" },
  268. { ".pnz", "image/png" },
  269. { ".pot,", "application/vnd.ms-powerpoint" },
  270. { ".ppm", "image/x-portable-pixmap" },
  271. { ".pps", "application/vnd.ms-powerpoint" },
  272. { ".ppt", "application/vnd.ms-powerpoint" },
  273. { ".pptx", "application/vnd.openxmlformats-officedocument.presentationml.presentation" },
  274. { ".pqf", "application/x-cprplayer" },
  275. { ".pqi", "application/cprplayer" },
  276. { ".prc", "application/x-prc" },
  277. { ".prf", "application/pics-rules" },
  278. { ".prop", "text/plain" },
  279. { ".proxy", "application/x-ns-proxy-autoconfig" },
  280. { ".ps", "application/postscript" },
  281. { ".ptlk", "application/listenup" },
  282. { ".pub", "application/x-mspublisher" },
  283. { ".pvx", "video/x-pv-pvx" },
  284. { ".qcp", "audio/vnd.qcelp" },
  285. { ".qt", "video/quicktime" },
  286. { ".qti", "image/x-quicktime" },
  287. { ".qtif", "image/x-quicktime" },
  288. { ".r3t", "text/vnd.rn-realtext3d" },
  289. { ".ra", "audio/x-pn-realaudio" },
  290. { ".ram", "audio/x-pn-realaudio" },
  291. { ".rar", "application/octet-stream" },
  292. { ".ras", "image/x-cmu-raster" },
  293. { ".rc", "text/plain" },
  294. { ".rdf", "application/rdf+xml" },
  295. { ".rf", "image/vnd.rn-realflash" },
  296. { ".rgb", "image/x-rgb" },
  297. { ".rlf", "application/x-richlink" },
  298. { ".rm", "audio/x-pn-realaudio" },
  299. { ".rmf", "audio/x-rmf" },
  300. { ".rmi", "audio/mid" },
  301. { ".rmm", "audio/x-pn-realaudio" },
  302. { ".rmvb", "audio/x-pn-realaudio" },
  303. { ".rnx", "application/vnd.rn-realplayer" },
  304. { ".roff", "application/x-troff" },
  305. { ".rp", "image/vnd.rn-realpix" },
  306. { ".rpm", "audio/x-pn-realaudio-plugin" },
  307. { ".rt", "text/vnd.rn-realtext" },
  308. { ".rte", "x-lml/x-gps" },
  309. { ".rtf", "application/rtf" },
  310. { ".rtg", "application/metastream" },
  311. { ".rtx", "text/richtext" },
  312. { ".rv", "video/vnd.rn-realvideo" },
  313. { ".rwc", "application/x-rogerwilco" },
  314. { ".s3m", "audio/x-mod" },
  315. { ".s3z", "audio/x-mod" },
  316. { ".sca", "application/x-supercard" },
  317. { ".scd", "application/x-msschedule" },
  318. { ".sct", "text/scriptlet" },
  319. { ".sdf", "application/e-score" },
  320. { ".sea", "application/x-stuffit" },
  321. { ".setpay", "application/set-payment-initiation" },
  322. { ".setreg", "application/set-registration-initiation" },
  323. { ".sgm", "text/x-sgml" },
  324. { ".sgml", "text/x-sgml" },
  325. { ".sh", "application/x-sh" },
  326. { ".shar", "application/x-shar" },
  327. { ".shtml", "magnus-internal/parsed-html" },
  328. { ".shw", "application/presentations" },
  329. { ".si6", "image/si6" },
  330. { ".si7", "image/vnd.stiwap.sis" },
  331. { ".si9", "image/vnd.lgtwap.sis" },
  332. { ".sis", "application/vnd.symbian.install" },
  333. { ".sit", "application/x-stuffit" },
  334. { ".skd", "application/x-Koan" },
  335. { ".skm", "application/x-Koan" },
  336. { ".skp", "application/x-Koan" },
  337. { ".skt", "application/x-Koan" },
  338. { ".slc", "application/x-salsa" },
  339. { ".smd", "audio/x-smd" },
  340. { ".smi", "application/smil" },
  341. { ".smil", "application/smil" },
  342. { ".smp", "application/studiom" },
  343. { ".smz", "audio/x-smd" },
  344. { ".snd", "audio/basic" },
  345. { ".spc", "application/x-pkcs7-certificates" },
  346. { ".spl", "application/futuresplash" },
  347. { ".spr", "application/x-sprite" },
  348. { ".sprite", "application/x-sprite" },
  349. { ".sdp", "application/sdp" },
  350. { ".spt", "application/x-spt" },
  351. { ".src", "application/x-wais-source" },
  352. { ".sst", "application/vnd.ms-pkicertstore" },
  353. { ".stk", "application/hyperstudio" },
  354. { ".stl", "application/vnd.ms-pkistl" },
  355. { ".stm", "text/html" },
  356. { ".svg", "image/svg+xml" },
  357. { ".sv4cpio", "application/x-sv4cpio" },
  358. { ".sv4crc", "application/x-sv4crc" },
  359. { ".svf", "image/vnd" },
  360. { ".svg", "image/svg+xml" },
  361. { ".svh", "image/svh" },
  362. { ".svr", "x-world/x-svr" },
  363. { ".swf", "application/x-shockwave-flash" },
  364. { ".swfl", "application/x-shockwave-flash" },
  365. { ".t", "application/x-troff" },
  366. { ".tad", "application/octet-stream" },
  367. { ".talk", "text/x-speech" },
  368. { ".tar", "application/x-tar" },
  369. { ".taz", "application/x-tar" },
  370. { ".tbp", "application/x-timbuktu" },
  371. { ".tbt", "application/x-timbuktu" },
  372. { ".tcl", "application/x-tcl" },
  373. { ".tex", "application/x-tex" },
  374. { ".texi", "application/x-texinfo" },
  375. { ".texinfo", "application/x-texinfo" },
  376. { ".tgz", "application/x-compressed" },
  377. { ".thm", "application/vnd.eri.thm" },
  378. { ".tif", "image/tiff" },
  379. { ".tiff", "image/tiff" },
  380. { ".tki", "application/x-tkined" },
  381. { ".tkined", "application/x-tkined" },
  382. { ".toc", "application/toc" },
  383. { ".toy", "image/toy" },
  384. { ".tr", "application/x-troff" },
  385. { ".trk", "x-lml/x-gps" },
  386. { ".trm", "application/x-msterminal" },
  387. { ".tsi", "audio/tsplayer" },
  388. { ".tsp", "application/dsptype" },
  389. { ".tsv", "text/tab-separated-values" },
  390. { ".ttf", "application/octet-stream" },
  391. { ".ttz", "application/t-time" },
  392. { ".txt", "text/plain" },
  393. { ".uls", "text/iuls" },
  394. { ".ult", "audio/x-mod" },
  395. { ".ustar", "application/x-ustar" },
  396. { ".uu", "application/x-uuencode" },
  397. { ".uue", "application/x-uuencode" },
  398. { ".vcd", "application/x-cdlink" },
  399. { ".vcf", "text/x-vcard" },
  400. { ".vdo", "video/vdo" },
  401. { ".vib", "audio/vib" },
  402. { ".viv", "video/vivo" },
  403. { ".vivo", "video/vivo" },
  404. { ".vmd", "application/vocaltec-media-desc" },
  405. { ".vmf", "application/vocaltec-media-file" },
  406. { ".vmi", "application/x-dreamcast-vms-info" },
  407. { ".vms", "application/x-dreamcast-vms" },
  408. { ".vox", "audio/voxware" },
  409. { ".vqe", "audio/x-twinvq-plugin" },
  410. { ".vqf", "audio/x-twinvq" },
  411. { ".vql", "audio/x-twinvq" },
  412. { ".vre", "x-world/x-vream" },
  413. { ".vrml", "x-world/x-vrml" },
  414. { ".vrt", "x-world/x-vrt" },
  415. { ".vrw", "x-world/x-vream" },
  416. { ".vts", "workbook/formulaone" },
  417. { ".wav", "audio/x-wav" },
  418. { ".wax", "audio/x-ms-wax" },
  419. { ".wbmp", "image/vnd.wap.wbmp" },
  420. { ".wcm", "application/vnd.ms-works" },
  421. { ".wdb", "application/vnd.ms-works" },
  422. { ".web", "application/vnd.xara" },
  423. { ".wi", "image/wavelet" },
  424. { ".wis", "application/x-InstallShield" },
  425. { ".wks", "application/vnd.ms-works" },
  426. { ".wm", "video/x-ms-wm" },
  427. { ".wma", "audio/x-ms-wma" },
  428. { ".wmd", "application/x-ms-wmd" },
  429. { ".wmf", "application/x-msmetafile" },
  430. { ".wml", "text/vnd.wap.wml" },
  431. { ".wmlc", "application/vnd.wap.wmlc" },
  432. { ".wmls", "text/vnd.wap.wmlscript" },
  433. { ".wmlsc", "application/vnd.wap.wmlscriptc" },
  434. { ".wmlscript", "text/vnd.wap.wmlscript" },
  435. { ".wmv", "audio/x-ms-wmv" },
  436. { ".wmx", "video/x-ms-wmx" },
  437. { ".wmz", "application/x-ms-wmz" },
  438. { ".wpng", "image/x-up-wpng" },
  439. { ".wps", "application/vnd.ms-works" },
  440. { ".wpt", "x-lml/x-gps" },
  441. { ".wri", "application/x-mswrite" },
  442. { ".wrl", "x-world/x-vrml" },
  443. { ".wrz", "x-world/x-vrml" },
  444. { ".ws", "text/vnd.wap.wmlscript" },
  445. { ".wsc", "application/vnd.wap.wmlscriptc" },
  446. { ".wv", "video/wavelet" },
  447. { ".wvx", "video/x-ms-wvx" },
  448. { ".wxl", "application/x-wxl" },
  449. { ".x-gzip", "application/x-gzip" },
  450. { ".xaf", "x-world/x-vrml" },
  451. { ".xar", "application/vnd.xara" },
  452. { ".xbm", "image/x-xbitmap" },
  453. { ".xdm", "application/x-xdma" },
  454. { ".xdma", "application/x-xdma" },
  455. { ".xdw", "application/vnd.fujixerox.docuworks" },
  456. { ".xht", "application/xhtml+xml" },
  457. { ".xhtm", "application/xhtml+xml" },
  458. { ".xhtml", "application/xhtml+xml" },
  459. { ".xla", "application/vnd.ms-excel" },
  460. { ".xlc", "application/vnd.ms-excel" },
  461. { ".xll", "application/x-excel" },
  462. { ".xlm", "application/vnd.ms-excel" },
  463. { ".xls", "application/vnd.ms-excel" },
  464. { ".xlsx", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" },
  465. { ".xlt", "application/vnd.ms-excel" },
  466. { ".xlw", "application/vnd.ms-excel" },
  467. { ".xm", "audio/x-mod" },
  468. { ".xml", "text/plain" },
  469. { ".xmz", "audio/x-mod" },
  470. { ".xof", "x-world/x-vrml" },
  471. { ".xpi", "application/x-xpinstall" },
  472. { ".xpm", "image/x-xpixmap" },
  473. { ".xsit", "text/xml" },
  474. { ".xsl", "text/xml" },
  475. { ".xul", "text/xul" },
  476. { ".xwd", "image/x-xwindowdump" },
  477. { ".xyz", "chemical/x-pdb" },
  478. { ".yz1", "application/x-yz1" },
  479. { ".z", "application/x-compress" },
  480. { ".zac", "application/x-zaurus-zac" },
  481. { ".zip", "application/zip" },
  482. { ".json", "application/json" },

MIME大全

传输编码

内容传输编码(Content-Transfer-Encoding),这个区域使指定ASCII以外的字符编码方式成为可能。形式如下:
Content-Transfer-Encoding: [mechanism]
其中,mechanism的值可以指定为“7bit”,“8bit”,“binary”,“quoted-printable”,“base64”。
7bit
7bit这里指的是7位的ASCII编码方式。
8bit
8位元ASCII码。
binary
quoted-printable
因为欧洲的一些文字和ASCII字符集中的某些字符有部分相同。如果邮件消息使用的是这些语言的话,于ASCII重叠的那些字符可以原样使用,ASCII字符集中不存在的字符采用形如“=??”的方法编码。这里“??”需要用将字符编码后的16进制数字来指定。采用quoted-printable编码的消息,长度不会变得太长,而且大部分都是ASCII中的字符,即使不通过解码也大致可以读懂消息的内容。
base64
base64是一种将二进制的01序列转化成ASCII字符的编码方法。编码后的文本或者二进制消息,就可以运用SMTP等只支持ASCII字符的协议传送了。Base64一般被认为会平均增加33%的报文长度,而且,经过编码的消息对于人类来说是不可读的。
x-encodingname
这个值是预留的扩展。
 
 

MIME简介的更多相关文章

  1. cct,web技术

    基本信息 全国计算机等级考试二级教程——Web程序设计(2016年版)作    者:教育部考试中心 编出 版 社:高等教育出版社出版时间:20115-12-1 ISBN:9787040442991版 ...

  2. 小强的HTML5移动开发之路(12)——从一个多媒体标签说起

    来自:http://blog.csdn.net/dawanganban/article/details/18136813 一.视频播放 <html> <head> <ti ...

  3. pikachu-不安全的文件下载和上传

    一.文件下载漏洞 1.1 概述     很多网站都会提供文件下载的功能,即用户可以通过点击下载链接,下载到链接所对应的文件.但是,如果文件下载功能设计不当,则可能导致攻击者可以通过构造文件路径,从而获 ...

  4. MIME(Multipurpose Internet Mail Extensions)的简介

    多用途互联网邮件扩展类型(MIME) 作用:用于标识Web资源类型(Multipurpose Internet Mail Extensions,MIME) 效果:Web上MIME为每种类型的资源提供一 ...

  5. REST简介

    一说到REST,我想大家的第一反应就是“啊,就是那种前后台通信方式.”但是在要求详细讲述它所提出的各个约束,以及如何开始搭建REST服务时,却很少有人能够清晰地说出它到底是什么,需要遵守什么样的准则. ...

  6. XML简介与CDATA解释

    简介XML 是一种受到广泛支持的 Internet 标准,用于以一种特殊的方式编码结构化数据.实际上,以 XML 编码的数据可以通过任何编程语言解码,人们甚至可以使用标准的文本编辑器来阅读或编写 XM ...

  7. Servlet规范简介——web框架是如何注入到Servlet中的

    Servlet规范简介--web框架是如何注入到Servlet中的 引言 Web框架一般是通过一个Servlet提供统一的请求入口,将指定的资源映射到这个servlet,在这个servlet中进行框架 ...

  8. JavaWeb:Web与HTTP协议简介

    JavaWeb:Web与HTTP协议简介 Web的概念 什么是Web: Web是网络上使用最广泛的分布式应用架构. 旨在共享分布在网络上的各个Web服务器中的所有互相连接的信息. 三个特征: 用HTM ...

  9. Servlet基础(一) Servlet简介 关键API介绍及结合源码讲解

    Servlet基础(一) Servlet基础和关键的API介绍 Servlet简介 Java Servlet是和平台无关的服务器端组件,它运行在Servlet容器中. Servlet容器负责Servl ...

随机推荐

  1. Vuex总结

    Vuex官网链接:https://vuex.vuejs.org/zh-cn/strict.html Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式. 它采用集中式存储管理应用的所有组件 ...

  2. thinkphp5.0生命周期

    本篇内容我们对ThinkPHP5.0的应用请求的生命周期做大致的介绍,以便于开发者了解整个执行流程. 1.入口文件 用户发起的请求都会经过应用的入口文件,通常是 public/index.php文件. ...

  3. 爱奇艺全国高校算法大赛初赛A

    $01$背包. 数据范围:物品个数小于等于$3000$,背包大小小于等于$1000000$. $map<int,long long>dp$,用$map$去做$dp$,可以少遍历很多状态,可 ...

  4. BZOJ4327 [JSOI2012] 玄武密码 [AC自动机]

    题目传送门 玄武密码 Description 在美丽的玄武湖畔,鸡鸣寺边,鸡笼山前,有一块富饶而秀美的土地,人们唤作进香河.相传一日,一缕紫气从天而至,只一瞬间便消失在了进香河中.老人们说,这是玄武神 ...

  5. 在 HTTP Request 中加入特定的 Header

    转:http://www.findspace.name/easycoding/1137 要加入 header,需要使用 Request 对象: #code1 import urllib2 reques ...

  6. CodeForces - 1016D Vasya And The Matrix

    题面在这里! 很明显二进制每一位都是无关的,所以可以先把原问题简化:给矩阵中的每个位置填入0/1,使得特定行/列有奇数个1,其他行/列有偶数个1. 一个比较好想的方法是对行和列 列出 n+m 个异或方 ...

  7. 【最小点覆盖】POJ3041-Asteroids

    [题目大意] 在n*n的网格上有n个点,每次删除一行或者一列,问至少要删除几次才能删除完全部的这些店? [思路] 在国庆最后一天到来前,把二分图的三个基本情况[最小点覆盖][DAG图的最小路径覆盖]和 ...

  8. 20162327WJH《程序设计与数据结构》课程总结

    20162327<程序设计与数据结构>课程总结 一.每周作业链接汇总 预备作业1:第一篇博客主要谈论了对本学期学习的展望,树立了一个目标. 预备作业2:简单的谈了谈自己的优势和一些成功的案 ...

  9. redis的原子性

    什么是原子性操作 在多进程(线程)访问共享资源时,能够确保所有其他的进程(线程)都不在同一时间内访问相同的资源,(要么完全执行,要么完全不执行) 简单描述 有个变量X=0,要进行+1操作,步骤如下: ...

  10. fork新建进程——父进程等待子进程结束

    #include <sys/types.h>#include<sys/wait.h>#include<unistd.h>#include<stdio.h> ...