response.setContentType()的作用及MIME参数详解

  response.setContentType(MIME)的作用是使客户端浏览器,区分不同种类的数据,并根据不同的MIME调用浏览器内不同的程序嵌入模块来处理相应的数据。

  例如web浏览器就是通过MIME类型来判断文件是GIF图片。通过MIME类型来处理json字符串。

  Tomcat的安装目录\conf\web.xml 中就定义了大量MIME类型 ,可以参考。

  response.setContentType("text/html; charset=utf-8"); html

  .setContentType("text/plain; charset=utf-8"); 文本

  text/javascript json数据

  application/xml xml数据

  这个方法设置发送到客户端的响应的内容类型,此时响应还没有提交。给出的内容类型可以包括字符编码说明,例如:text/html;charset=UTF-8.如果该方法在getWriter()方法被调用之前调用,那么响应的字符编码将仅从给出的内容类型中设置。该方法如果在getWriter()方法被调用之后或者在被提交之后调用,将不会设置响应的字符编码,在使用http协议的情况中,该方法设置 Content-type实体报头。

  一般在Servlet中,习惯性的会首先设置请求以及响应的内容类型以及编码方式:

  

复制代码 代码如下:

  response.setContentType("text/html;charset=UTF-8");

  request.setCharacterEncoding("UTF-8");

  response.setContentType()的String参数及对应类型

  <option value="image/bmp">BMP</option>

  <option value="image/gif">GIF</option>

  <option value="image/jpeg">JPEG</option>

  <option value="image/tiff">TIFF</option>

  <option value="image/x-dcx">DCX</option>

  <option value="image/x-pcx">PCX</option>

  <option value="text/html">HTML</option>

  <option value="text/plain">TXT</option>

  <option value="text/xml">XML</option>

  <option value="application/afp">AFP</option>

  <option value="application/pdf">PDF</option>

  <option value="application/rtf">RTF</option>

  <option value="application/msword">MSWORD</option>

  <option value="application/vnd.ms-excel">MSEXCEL</option>

  <option value="application/vnd.ms-powerpoint">MSPOWERPOINT</option>

  <option value="application/wordperfect5.1">WORDPERFECT</option>

  <option value="application/vnd.lotus-wordpro">WORDPRO</option>

  <option value="application/vnd.visio">VISIO</option>

  <option value="application/vnd.framemaker">FRAMEMAKER</option>

  <option value="application/vnd.lotus-1-2-3">LOTUS123</option>

  MIME映射策略就是在网页中使用哪个应用程序(即插件),打开哪种文件。另外还有使用权限问题。比如对PDF文档,用“application/pdf “策略。这在动态网页中很常见。出现这种现象,有两种情形:一是使用一个应用程序去打开它不能打开的文档,比如用在标签中定义“DWG”文档用 “application/pdf ”,就会出现无法打开的问题。二是文件扩展名符合要求,但文件内容(格式)不符合要求。你可以检查你浏览的网页源代码,获得出错信息。检查方法是:查看— 源文件。寻找类似于“application/pdf “的字符串,就可以看到,要打开的文件是否与应用程序匹配。 追问 如果不相匹配如何解决回答这通常是由网页编写人来更改。比如:你在源文件里面找到你要打开的文件的HTML标签,在里面加上应用程序即可。比如,你要在网页上打开一个PDF文档,找到PDF文档那一行,在HTML标签里加上 type=“application/pdf “ 就可以了。比如以下HTML文件: <!----------测试MIME-----------><html> <head><title>测试MIME</title></head><body> <a type="application/pdf" href="test.pdf">测试MIME</a> </body> </html 将上面的代码保存为test.html,再在相同的位置存储一个pdf文档,双击它就会在网页中打开该文档。

  -------------------------------------------------------------------------------------------------------------

  response.setContentType()的参数说明

  

复制代码 代码如下:

  <meta http-equiv="Content-Type" content="text/html; charset=GBK">

  response.setContentType() ;

  * = application/octet-stream

  .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 :客户端浏览器按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 :客户端浏览器按CSS格式进行解析文档

  .cut = application/x-cut

  .dbf = application/x-dbf

  .dbm = application/x-dbm

  .dbx = application/x-dbx

  .dcd = text/xml :客户端浏览器按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 :客户端浏览器按XML格式进行解析文档

  .dwf = Model/vnd.dwf

  .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 :客户端浏览器按XML格式进行解析文档

  .epi = application/x-epi

  .eps = application/x-ps

  .eps = application/postscript

  .etd = application/x-ebx

  .exe = application/x-msdownload

  .fax = image/fax

  .fdf = application/vnd.fdf

  .fif = application/fractals

  .fo = text/xml :客户端浏览器按XML格式进行解析文档

  .frm = application/x-frm

  .g4 = application/x-g4

  .gbr = application/x-gbr

  .gcd = application/x-gcd

  .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 = image/x-icon

  .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 = image/jpeg

  .jpe = application/x-jpe

  .jpeg = image/jpeg

  .jpg = 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/msaccess

  .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 :客户端浏览器按PDF格式进行解析文档

  .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 = image/png

  .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/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/x-ps

  .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/msword

  .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 :客户端浏览器按 Flash 格式进行解析文档

  .tdf = application/x-tdf

  .tg4 = application/x-tg4

  .tga = application/x-tga

  .tif = image/tiff

  .tif = application/x-tif

  .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/vnd.visio

  .vsd = application/x-vsd

  .vss = application/vnd.visio

  .vst = 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/vnd.ms-excel

  .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

  .x_t = application/x-x_t