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/javascriptjson資料
application/xmlxml資料
這個方法設定傳送到客戶端的響應的內容型別,此時響應還沒有提交。給出的內容型別可以包括字元編碼說明,例如: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引數及對應型別
value="image/bmp">BMP
value="image/gif">GIF
value="image/jpeg">JPEG
value="image/tiff">TIFF
value="image/x-dcx">DCX
value="image/x-pcx">PCX
value="text/html">HTML
value="text/plain">TXT
value="text/xml">XML
value="application/afp">AFP
value="application/pdf">PDF
value="application/rtf">RTF
value="application/msword">MSWORD
value="application/vnd.ms-excel">MSEXCEL
value="application/vnd.ms-powerpoint">MSPOWERPOINT
value="application/wordperfect5.1">WORDPERFECT
value="application/vnd.lotus-wordpro">WORDPRO
value="application/vnd.visio">VISIO
value="application/vnd.framemaker">FRAMEMAKER
value="application/vnd.lotus-1-2-3">LOTUS123
MIME對映策略就是在網頁中使用哪個應用程式(即外掛),開啟哪種檔案。另外還有使用許可權問題。比如對PDF文件,用“application/pdf“策略。這在動態網頁中很常見。出現這種現象,有兩種情形:一是使用一個應用程式去開啟它不能開啟的文件,比如用在標籤中定義“DWG”文件用“application/pdf”,就會出現無法開啟的問題。二是副檔名符合要求,但檔案內容(格式)不符合要求。你可以檢查你瀏覽的網頁原始碼,獲得出錯資訊。檢查方法是:檢視—原始檔。尋找類似於“application/pdf“的字串,就可以看到,要開啟的檔案是否與應用程式匹配。追問如果不相匹配如何解決回答這通常是由網頁編寫人來更改。比如:你在原始檔裡面找到你要開啟的檔案的HTML標籤,在裡面加上應用程式即可。比如,你要在網頁上開啟一個PDF文件,找到PDF文件那一行,在HTML標籤里加上type=“application/pdf“就可以了
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/javascriptjson資料
application/xmlxml資料
這個方法設定傳送到客戶端的響應的內容型別,此時響應還沒有提交。給出的內容型別可以包括字元編碼說明,例如: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引數及對應型別
value="image/bmp">BMP
value="image/gif">GIF
value="image/jpeg">JPEG
value="image/tiff">TIFF
value="image/x-dcx">DCX
value="image/x-pcx">PCX
value="text/html">HTML
value="text/plain">TXT
value="text/xml">XML
value="application/afp">AFP
value="application/pdf">PDF
value="application/rtf">RTF
value="application/msword">MSWORD
value="application/vnd.ms-excel">MSEXCEL
value="application/vnd.ms-powerpoint">MSPOWERPOINT
value="application/wordperfect5.1">WORDPERFECT
value="application/vnd.lotus-wordpro">WORDPRO
value="application/vnd.visio">VISIO
value="application/vnd.framemaker">FRAMEMAKER
value="application/vnd.lotus-1-2-3">LOTUS123
MIME對映策略就是在網頁中使用哪個應用程式(即外掛),開啟哪種檔案。另外還有使用許可權問題。比如對PDF文件,用“application/pdf“策略。這在動態網頁中很常見。出現這種現象,有兩種情形:一是使用一個應用程式去開啟它不能開啟的文件,比如用在標籤中定義“DWG”文件用“application/pdf”,就會出現無法開啟的問題。二是副檔名符合要求,但檔案內容(格式)不符合要求。你可以檢查你瀏覽的網頁原始碼,獲得出錯資訊。檢查方法是:檢視—原始檔。尋找類似於“application/pdf“的字串,就可以看到,要開啟的檔案是否與應用程式匹配。追問如果不相匹配如何解決回答這通常是由網頁編寫人來更改。比如:你在原始檔裡面找到你要開啟的檔案的HTML標籤,在裡面加上應用程式即可。比如,你要在網頁上開啟一個PDF文件,找到PDF文件那一行,在HTML標籤里加上type=“application/pdf“就可以了