JSP 中response.setContentType()的作用及參數(shù)
response.setContentType(MIME)的作用是使客戶端瀏覽器,區(qū)分不同種類的數(shù)據(jù),并根據(jù)不同的MIME調(diào)用瀏覽器內(nèi)不同的程序嵌入模塊來(lái)處理相應(yīng)的數(shù)據(jù)。
例如web瀏覽器就是通過(guò)MIME類型來(lái)判斷文件是GIF圖片。通過(guò)MIME類型來(lái)處理json字符串。
Tomcat的安裝目錄\conf\web.xml 中就定義了大量MIME類型 ,可以參考。
response.setContentType("text/html; charset=utf-8"); html
.setContentType("text/plain; charset=utf-8"); 文本
text/javascript json數(shù)據(jù)
application/xml xml數(shù)據(jù)
這 個(gè)方法設(shè)置發(fā)送到客戶端的響應(yīng)的內(nèi)容類型,此時(shí)響應(yīng)還沒(méi)有提交。給出的內(nèi)容類型可以包括字符編碼說(shuō)明,例 如:text/html;charset=UTF-8.如果該方法在getWriter()方法被調(diào)用之前調(diào)用,那么響應(yīng)的字符編碼將僅從給出的內(nèi)容類型 中設(shè)置。該方法如果在getWriter()方法被調(diào)用之后或者在被提交之后調(diào)用,將不會(huì)設(shè)置響應(yīng)的字符編碼,在使用http協(xié)議的情況中,該方法設(shè) 置 Content-type實(shí)體報(bào)頭。
一般在Servlet中,習(xí)慣性的會(huì)首先設(shè)置請(qǐng)求以及響應(yīng)的內(nèi)容類型以及編碼方式:
response.setContentType("text/html;charset=UTF-8");
request.setCharacterEncoding("UTF-8");
response.setContentType()的String參數(shù)及對(duì)應(yīng)類型
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映射策略就是在網(wǎng)頁(yè)中使用哪個(gè)應(yīng)用程序(即插件),打開哪種文件。另外還有使用權(quán)限問(wèn)題。比如對(duì)PDF文檔,用“application/pdf “策略。這在動(dòng)態(tài)網(wǎng)頁(yè)中很常見。出現(xiàn)這種現(xiàn)象,有兩種情形:一是使用一個(gè)應(yīng)用程序去打開它不能打開的文檔,比如用在標(biāo)簽中定義“DWG”文檔用 “application/pdf ”,就會(huì)出現(xiàn)無(wú)法打開的問(wèn)題。二是文件擴(kuò)展名符合要求,但文件內(nèi)容(格式)不符合要求。你可以檢查你瀏覽的網(wǎng)頁(yè)源代碼,獲得出錯(cuò)信息。檢查方法是:查看— 源文件。尋找類似于“application/pdf “的字符串,就可以看到,要打開的文件是否與應(yīng)用程序匹配。 追問(wèn) 如果不相匹配 如何解決回答 這通常是由網(wǎng)頁(yè)編寫人來(lái)更改。比如:你在源文件里面找到你要打開的文件的HTML標(biāo)簽,在里面加上應(yīng)用程序即可。比如,你要在網(wǎng)頁(yè)上打開一個(gè)PDF文檔, 找到PDF文檔那一行,在HTML標(biāo)簽里加上 type=“application/pdf “ 就可以了。比如以下HTML文件: !----------測(cè)試MIME----------->html> head>title>測(cè)試MIME/title>/head>body> a type="application/pdf" href="test.pdf" rel="external nofollow" >測(cè)試MIME/a> /body> /html 將上面的代碼保存為test.html,再在相同的位置存儲(chǔ)一個(gè)pdf文檔,雙擊它就會(huì)在網(wǎng)頁(yè)中打開該文檔。
如有疑問(wèn)請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
您可能感興趣的文章:- JSP 中Session的詳解及原理分析
- spring boot實(shí)戰(zhàn)之使用JSP的示例
- 詳解SpringBoot 添加對(duì)JSP的支持(附常見坑點(diǎn))
- SpringBoot項(xiàng)目如何訪問(wèn)jsp頁(yè)面的示例代碼
- JSP中Servlet的Request與Response的用法與區(qū)別
- JSP之表單提交get和post的區(qū)別詳解及實(shí)例
- JSP狀態(tài)管理的簡(jiǎn)單介紹