response.setContentType()的作用及參數解釋

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參數及對應類型

BMP
GIF
JPEG
TIFF
DCX
PCX
HTML
TXT
XML
AFP
PDF
RTF
MSWORD
MSEXCEL
MSPOWERPOINT
WORDPERFECT
WORDPRO
VISIO
FRAMEMAKER
LOTUS123

MIME映射策略就是在網頁中使用哪個應用程序(即插件),打開哪種文件。另外還有使用權限問題。比如對PDF文檔,用“application/pdf “策略。這在動態網頁中很常見。出現這種現象,有兩種情形:一是使用一個應用程序去打開它不能打開的文檔,比如用在標籤中定義“DWG”文檔用 “application/pdf ”,就會出現無法打開的問題。二是文件擴展名符合要求,但文件內容(格式)不符合要求。你可以檢查你瀏覽的網頁源代碼,獲得出錯信息。檢查方法是:查看— 源文件。尋找類似於“application/pdf “的字符串,就可以看到,要打開的文件是否與應用程序匹配。 追問 如果不相匹配 如何解決回答 這通常是由網頁編寫人來更改。比如:你在源文件裏面找到你要打開的文件的HTML標籤,在裏面加上應用程序即可。比如,你要在網頁上打開一個PDF文檔, 找到PDF文檔那一行,在HTML標籤里加上 type=“application/pdf “ 就可以了。比如以下HTML文件: 測試MIME 測試MIME

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