Tomcat自定義Http錯誤資訊

2022-02-15 20:33:22 字數 608 閱讀 3197

需求:要讓tomcat在返回200、404等的httpstatus時,附帶自定義訊息而不是預設的ok/not found。

做法:修改catalina.properties配置檔案,新增以下內容。

org.apache.coyote.use_custom_status_msg_in_header=true

在伺服器端使用httpservletresponse.senderror(int, string)傳送httpstatus和自定義訊息。

response.senderror(200, "you got the correct result!");

要注意的是當自定義非英文數字的訊息時,需要轉碼成iso-8859-1。

response.senderror(500, new string("親,你失敗了。".getbytes("utf-8"), "iso-8859-1"));

相應的在接收時也要轉碼回來。

string responsemsg = new string(conn.getresponsemessage().getbytes("iso-8859-1"), "utf-8");

自定義Tomcat錯誤頁面 舉例

為了獲得很好的使用者感受,不應當向使用者暴露404這樣的頁面的。tomcat不像iis提供了各種型別的錯誤頁,如果tomcat發生錯誤就會顯示千篇一律的錯誤頁面。其實我們可以通過修改其配置檔案,從而自定義設定其錯誤頁面的顯示。1 在網上隨便搜幾個404頁面 2 確保404頁面大於512位元組,這樣瀏...

自定義Tomcat錯誤頁面 舉例

為了獲得很好的使用者感受,不應當向使用者暴露404這樣的頁面的。tomcat不像iis提供了各種型別的錯誤頁,如果tomcat發生錯誤就會顯示千篇一律的錯誤頁面。其實我們可以通過修改其配置檔案,從而自定義設定其錯誤頁面的顯示。1 在網上隨便搜幾個404頁面 2 確保404頁面大於512位元組,這樣瀏...

自定義 HTTP 模組

在響應下面兩個事件時呼叫該模組 事件和 事件。這使該模組可以在處理頁請求之前和之後執行。在這種情況下,該模組向請求的 asp.net 網頁的任一 http 請求開頭處新增一條訊息,並在處理請求後新增另一條訊息。在建立完 helloworldmodule 類後,可以通過在 web.config 檔案中...