MIME(多用途互联网邮件扩展类型)
MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型。(百度百科)。是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式。
由于MIME类型与文档的后缀相关,因此服务器使用文档的后缀来区分不同文件的MIME类型,服务器中必须定义文档后缀和MIME类型之间的对应关系。而客户程序从服务器上接收数据的时候,它只是从服务器接受数据流,并不了解文档的名字,因此服务器必须使用附加信息来告诉客户程序数据的MIME类型。服务器在发送真正的数据之前,就要先发送标志数据的MIME类型的信息,这个信息使用Content-type关键字进行定义,例如对于HTML文档,服务器将首先发送以下两行MIME标识信息,这个标识并不是真正的数据文件的一部分。
Content-type: text/html
注意,第二行为一个空行,这是必须的,使用这个空行的目的是将MIME信息与真正的数据内容分隔开。
Content-Type是HTTP协议header中一个重要的参数,它用于标识发送或接收到的数据的类型,浏览器根据该参数来决定数据的打开方式。在最早的HTTP协议中,并没有附加的数据类型信息,所有传送的数据都被客户程序解释为超文本标记语言HTML 文档,而为了支持多媒体数据类型,HTTP协议中就使用了附加在文档之前的MIME数据类型信息来标识数据类型,它使得HTTP传输的不再是普通的文本,让网页内容变得丰富多彩。
Content-Type使用的是 “主类型/子类型; 额外参数” ( [type]/[subtype]; parameter)的数值格式。
“主类型” (type)主要有以下几种:
- text:用于标准化地表示的文本信息,文本消息可以是多种字符集和或者多种格式的; 默认是text/plain;
- multipart:用于连接消息体的多个部分构成一个消息,这些部分可以是不同类型的数据; 默认是multipart/mixed;
- application:用于传输应用程序数据或者二进制数据; 默认是application/octet-stream;
- message:用于包装一个E-mail消息;
- image:用于传输静态图片数据;
- audio:用于传输音频或者音声数据;
- video:用于传输动态影像数据,可以是与音频编辑在一起的视频数据格式。
- drawing:--未整理
- java:--未整理
- Model:--未整理
“子类型” (subtype)用于指定"主类型"的详细形式。 其中以x-开头表示该类别尚未标准化 。当客户端不能确定“子类型”时,会根据“主类型”来获取默认的子类型。
"额外参数" (parameter)用于指定请求/响应内容的字符编码格式。例如text/html;charset=utf-8;
MIME类型标准是通过Internet的IANA组织来制定的,但由于Internet发展的太快,很多应用程序等不及IANA来确认他们使用的MIME类型为标准类型,因此他们使用在类别中以x-开头的方法标识这个类别还没有成为标准,例如:x-gzip,x-tar等。事实上这些类型运用的很广泛,已经成为了事实标准。只要客户机和服务器共同承认这个MIME类型,即使它是不标准的类型也没有关系,客户程序就能根据MIME类型,采用具体的处理手段来处理数据。而Web服务器和浏览器(包括操作系统)中,缺省都设置了标准的和常见的MIME类型,只有对于不常见的 MIME类型,才需要同时设置服务器和客户浏览器,以进行识别。
以下整理了最新的MIME类型:
.*=application/octet-stream
.tif=application/x-tif
.001=application/x-001
.301=application/x-301
.323=text/h323
.906=application/x-906
.907=drawing/907
.a11=application/x-a11
.acp=audio/x-mei-aac
.ai=application/postscript
.aif=audio/aiff
.aifc=audio/aiff
.aiff=audio/aiff
.anv=application/x-anv
.asa=text/asa
.asf=video/x-ms-asf
.asp=text/asp
.asx=video/x-ms-asf
.au=audio/basic
.avi=video/avi
.awf=application/vnd.adobe.workflow
.biz=text/xml
.bmp=application/x-bmp
.bot=application/x-bot
.c4t=application/x-c4t
.c90=application/x-c90
.cal=application/x-cals
.cat=application/vnd.ms-pki.seccat
.cdf=application/x-netcdf
.cdr=application/x-cdr
.cel=application/x-cel
.cer=application/x-x509-ca-cert
.cg4=application/x-g4
.cgm=application/x-cgm
.cit=application/x-cit
.class=java/*
.cml=text/xml
.cmp=application/x-cmp
.cmx=application/x-cmx
.cot=application/x-cot
.crl=application/pkix-crl
.crt=application/x-x509-ca-cert
.csi=application/x-csi
.css=text/css
.cut=application/x-cut
.dbf=application/x-dbf
.dbm=application/x-dbm
.dbx=application/x-dbx
.dcd=text/xml
.dcx=application/x-dcx
.der=application/x-x509-ca-cert
.dgn=application/x-dgn
.dib=application/x-dib
.dll=application/x-msdownload
.doc=application/msword
.dot=application/msword
.drw=application/x-drw
.dtd=text/xml
.dwf=application/x-dwf
.dwg=application/x-dwg
.dxb=application/x-dxb
.dxf=application/x-dxf
.edn=application/vnd.adobe.edn
.emf=application/x-emf
.eml=message/rfc822
.ent=text/xml
.epi=application/x-epi
.eps=application/postscript
.etd=application/x-ebx
.exe=application/x-msdownload
.fax=image/fax
.fdf=application/vnd.fdf
.fif=application/fractals
.fo=text/xml
.frm=application/x-frm
.g4=application/x-g4
.gbr=application/x-gbr
.gif=image/gif
.gl2=application/x-gl2
.gp4=application/x-gp4
.hgl=application/x-hgl
.hmr=application/x-hmr
.hpg=application/x-hpgl
.hpl=application/x-hpl
.hqx=application/mac-binhex40
.hrf=application/x-hrf
.hta=application/hta
.htc=text/x-component
.htm=text/html
.html=text/html
.htt=text/webviewhtml
.htx=text/html
.icb=application/x-icb
.ico=application/x-ico
.iff=application/x-iff
.ig4=application/x-g4
.igs=application/x-igs
.iii=application/x-iphone
.img=application/x-img
.ins=application/x-internet-signup
.isp=application/x-internet-signup
.IVF=video/x-ivf
.java java/*
.jfif=image/jpeg
.jpe=application/x-jpe
.jpeg=image/jpeg
.jpg=application/x-jpg
.js=application/x-javascript
.jsp=text/html
.la1=audio/x-liquid-file
.lar=application/x-laplayer-reg
.latex=application/x-latex
.lavs=audio/x-liquid-secure
.lbm=application/x-lbm
.lmsff=audio/x-la-lms
.ls=application/x-javascript
.ltr=application/x-ltr
.m1v=video/x-mpeg
.m2v=video/x-mpeg
.m3u=audio/mpegurl
.m4e=video/mpeg4
.mac=application/x-mac
.man=application/x-troff-man
.math=text/xml
.mdb=application/x-mdb
.mfp=application/x-shockwave-flash
.mht=message/rfc822
.mhtml=message/rfc822
.mi=application/x-mi
.mid=audio/mid
.midi=audio/mid
.mil=application/x-mil
.mml=text/xml
.mnd=audio/x-musicnet-download
.mns=audio/x-musicnet-stream
.mocha=application/x-javascript
.movie=video/x-sgi-movie
.mp1=audio/mp1
.mp2=audio/mp2
.mp2v=video/mpeg
.mp3=audio/mp3
.mp4=video/mpeg4
.mpa=video/x-mpg
.mpd=application/vnd.ms-project
.mpe=video/x-mpeg
.mpeg=video/mpg
.mpg=video/mpg
.mpga=audio/rn-mpeg
.mpp=application/vnd.ms-project
.mps=video/x-mpeg
.mpt=application/vnd.ms-project
.mpv=video/mpg
.mpv2=video/mpeg
.mpw=application/vnd.ms-project
.mpx=application/vnd.ms-project
.mtx=text/xml
.mxp=application/x-mmxp
.net=image/pnetvue
.nrf=application/x-nrf
.nws=message/rfc822
.odc=text/x-ms-odc
.out=application/x-out
.p10=application/pkcs10
.p12=application/x-pkcs12
.p7b=application/x-pkcs7-certificates
.p7c=application/pkcs7-mime
.p7m=application/pkcs7-mime
.p7r=application/x-pkcs7-certreqresp
.p7s=application/pkcs7-signature
.pc5=application/x-pc5
.pci=application/x-pci
.pcl=application/x-pcl
.pcx=application/x-pcx
.pdf=application/pdf
.pdx=application/vnd.adobe.pdx
.pfx=application/x-pkcs12
.pgl=application/x-pgl
.pic=application/x-pic
.pko=application/vnd.ms-pki.pko
.pl=application/x-perl
.plg=text/html
.pls=audio/scpls
.plt=application/x-plt
.png=application/x-png
.pot=application/vnd.ms-powerpoint
.ppa=application/vnd.ms-powerpoint
.ppm=application/x-ppm
.pps=application/vnd.ms-powerpoint
.ppt=application/x-ppt
.pr=application/x-pr
.prf=application/pics-rules
.prn=application/x-prn
.prt=application/x-prt
.ps=application/postscript
.ptn=application/x-ptn
.pwz=application/vnd.ms-powerpoint
.r3t=text/vnd.rn-realtext3d
.ra=audio/vnd.rn-realaudio
.ram=audio/x-pn-realaudio
.ras=application/x-ras
.rat=application/rat-file
.rdf=text/xml
.rec=application/vnd.rn-recording
.red=application/x-red
.rgb=application/x-rgb
.rjs=application/vnd.rn-realsystem-rjs
.rjt=application/vnd.rn-realsystem-rjt
.rlc=application/x-rlc
.rle=application/x-rle
.rm=application/vnd.rn-realmedia
.rmf=application/vnd.adobe.rmf
.rmi=audio/mid
.rmj=application/vnd.rn-realsystem-rmj
.rmm=audio/x-pn-realaudio
.rmp=application/vnd.rn-rn_music_package
.rms=application/vnd.rn-realmedia-secure
.rmvb=application/vnd.rn-realmedia-vbr
.rmx=application/vnd.rn-realsystem-rmx
.rnx=application/vnd.rn-realplayer
.rp=image/vnd.rn-realpix
.rpm=audio/x-pn-realaudio-plugin
.rsml=application/vnd.rn-rsml
.rt=text/vnd.rn-realtext
.rtf=application/x-rtf
.rv=video/vnd.rn-realvideo
.sam=application/x-sam
.sat=application/x-sat
.sdp=application/sdp
.sdw=application/x-sdw
.sit=application/x-stuffit
.slb=application/x-slb
.sld=application/x-sld
.slk=drawing/x-slk
.smi=application/smil
.smil=application/smil
.smk=application/x-smk
.snd=audio/basic
.sol=text/plain
.sor=text/plain
.spc=application/x-pkcs7-certificates
.spl=application/futuresplash
.spp=text/xml
.ssm=application/streamingmedia
.sst=application/vnd.ms-pki.certstore
.stl=application/vnd.ms-pki.stl
.stm=text/html
.sty=application/x-sty
.svg=text/xml
.swf=application/x-shockwave-flash
.tdf=application/x-tdf
.tg4=application/x-tg4
.tga=application/x-tga
.tiff=image/tiff
.tld=text/xml
.top=drawing/x-top
.torrent=application/x-bittorrent
.tsd=text/xml
.txt=text/plain
.uin=application/x-icq
.uls=text/iuls
.vcf=text/x-vcard
.vda=application/x-vda
.vdx=application/vnd.visio
.vml=text/xml
.vpg=application/x-vpeg005
.vsd=application/x-vsd
.vss=application/vnd.visio
.vst=application/x-vst
.vsw=application/vnd.visio
.vsx=application/vnd.visio
.vtx=application/vnd.visio
.vxml=text/xml
.wav=audio/wav
.wax=audio/x-ms-wax
.wb1=application/x-wb1
.wb2=application/x-wb2
.wb3=application/x-wb3
.wbmp=image/vnd.wap.wbmp
.wiz=application/msword
.wk3=application/x-wk3
.wk4=application/x-wk4
.wkq=application/x-wkq
.wks=application/x-wks
.wm=video/x-ms-wm
.wma=audio/x-ms-wma
.wmd=application/x-ms-wmd
.wmf=application/x-wmf
.wml=text/vnd.wap.wml
.wmv=video/x-ms-wmv
.wmx=video/x-ms-wmx
.wmz=application/x-ms-wmz
.wp6=application/x-wp6
.wpd=application/x-wpd
.wpg=application/x-wpg
.wpl=application/vnd.ms-wpl
.wq1=application/x-wq1
.wr1=application/x-wr1
.wri=application/x-wri
.wrk=application/x-wrk
.ws=application/x-ws
.ws2=application/x-ws
.wsc=text/scriptlet
.wsdl=text/xml
.wvx=video/x-ms-wvx
.xdp=application/vnd.adobe.xdp
.xdr=text/xml
.xfd=application/vnd.adobe.xfd
.xfdf=application/vnd.adobe.xfdf
.xhtml=text/html
.xls=application/x-xls
.xlw=application/x-xlw
.xml=text/xml
.xpl=audio/scpls
.xq=text/xml
.xql=text/xml
.xquery=text/xml
.xsd=text/xml
.xsl=text/xml
.xslt=text/xml
.xwd=application/x-xwd
.x_b=application/x-x_b
.sis=application/vnd.symbian.install
.sisx=application/vnd.symbian.install
.x_t=application/x-x_t
.ipa=application/vnd.iphone
.apk=application/vnd.android.package-archive
.xap=application/x-silverlight-app