HTTP協議探索之Content-Type(MIME)

Content-Type是HTTP協議header中一個重要的參數,它用於標識發送或接收到的數據的類型,瀏覽器根據該參數來決定數據的打開方式。在最早的HTTP協議中,並沒有附加的數據類型信息,所有傳送的數據都被客戶程序解釋爲超文本標記語言HTML 文檔,而爲了支持多媒體數據類型,HTTP協議中就使用了附加在文檔之前的MIME數據類型信息來標識數據類型,它使得HTTP傳輸的不再是普通的文本,讓網頁內容變得豐富多彩。


本文地址:http://blog.csdn.net/chen_zw/article/details/18792923


Content-Type使用的是“主類型/子類型; 額外參數” [type]/[subtype]; parameter)的數值格式。

“主類型”(type)主要有以下幾種:

1. text:用於標準化地表示的文本信息,文本消息可以是多種字符集和或者多種格式的;默認是text/plain;

2. multipart:用於連接消息體的多個部分構成一個消息,這些部分可以是不同類型的數據;默認是multipart/mixed;

3. application:用於傳輸應用程序數據或者二進制數據;默認是application/octet-stream;

4. message:用於包裝一個E-mail消息;

5. image:用於傳輸靜態圖片數據;

6. audio:用於傳輸音頻或者音聲數據;

7. video:用於傳輸動態影像數據,可以是與音頻編輯在一起的視頻數據格式。

8. drawing:--未整理

9. java:--未整理

10 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類型,保存成properties資源文件:

.*=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 

properties資源文件下載地址:http://download.csdn.net/detail/czw2010/6888263


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章