Web學習日記_15:respond響應

1,服務器處理請求的流程:

  1.   服務器每次收到請求時,都會爲這個請求開闢一個新的線程。
  2.   服務器會把客戶端的請求數據封裝到request對象中,request就是請求數據的載體!
  3.   服務器還會創建response對象,這個對象與客戶端連接在一起,它可以用來向客戶端發送響應。


2,response:其類型爲HttpServletResponse

  •   ServletResponse-->與協議無關的類型
  •   HttpServletResponse-->與http協議相關的類型

  回憶一下http協議!http協議中響應的內容包含哪些東西呢?
  * 狀態碼:200表示成功、302表示重定向、404表示客戶端錯(訪問的資源不存在)、500表示服務器端錯

  •     > sendError(int sc) --> 發送錯誤狀態碼,例如404、500
  •     > sendError(int sc, String msg) --> 也是發送錯誤狀態碼,還可以帶一個錯誤信息!
  •     > setStatus(int sc) --> 發送成功的狀態碼,可以用來發送302

 
3,響應頭:Content-Type、Refresh、Location等等
    頭就是一個鍵值對!可能會存在一個頭(一個名稱,一個值),也可能會存在一個頭(一個名稱,多個值!)

  • > *****setHeader(String name, String value):適用於單值的響應頭,例如:response.setHeader("aaa", "AAA");
  • > addHeader(String name, String value):適用於多值的響應頭     

              response.addHeader("aaa", "A");

             response.addHeader("aaa", "AA"); 

              response.addHeader("aaa", "AAA");

 

  •     > setIntHeader(String name, int value):適用於單值的int類型的響應頭

                 response.setIntHeader("Content-Length", 888);

  •     > addIntHeader(String name, int value):適用於多值的int類型的響應頭
  •     > setDateHeader(String name, long value):適用於單值的毫秒類型的響應頭

                response.setDateHeader("expires", 1000 * 60 * 60 * 24);

  •     > addDateHeader(String name, long value):適用於多值的毫秒類型的響應頭
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章