Request對象:
服務器在接收到請求後,會給此次請求創建一個request對象,此對象中封存了此次請求相關的數據。
作用:存儲請求數據
注意:每次請求都會創建新的request對象存儲請求數據
特點:
- request對象由服務器創建
- 一次請求創建一個request對象
- 生命週期爲一次請求內,請求結束即銷燬此次請求的request對象
請求行-請求方式 請求URL 協議
- getMethod() 返回請求方式
- getRequestUrl() 返回請求url
- getRequsetUri() 返回請求uri
- getQueryString() 返回get請求中的url中的用戶數據(post請求中沒有此方法)
- getSchema() 返回協議
請求頭
- getHeader(String name) 根據鍵名獲取請求頭信息(如果請求頭信息name不存在則返回null)
- getHeaderNames() 返回存儲了請求頭鍵名的枚舉集合
- getRemoteAddr() 獲取客戶端的IP地址
- getRemotePort() 獲取客戶端端口號
- getLocalAddr() 獲取服務器的IP地址
- getLocalPort() 獲取服務器端口號
請求實體
- getParameter(String name) 根據鍵名獲取數據(鍵名就是前端頁面中的表單標籤的name屬性的值或者其他前端頁面其他方式提交數據的鍵的名字,如果請求中沒有對應的請求數據,則返回null)
- getParameterValues(String name) 根據鍵名獲取同名不同的值,返回數組(如果沒有對應的鍵名,則返回null)
- getParameterNames() 返回實體數據中鍵名的枚舉
Response對象
注意:一旦使用resp對象作出了請求響應,則意味着此次請求處理完畢。服務器在響應後會將此次請求相關的req對象和resp對象銷燬。
設置響應行-協議、狀態嗎、狀態信息
resp.sendError(int status) 自定義異常,可以自動響應狀態給瀏覽器
設置響應頭
可以先添加再設置,也可以直接設置;二次添加不會覆蓋,二次設置會覆蓋;
resp.addHeader(ObjectName,value) 添加響應頭信息
resp.setHeader(ObjectName,value) 設置響應頭,注意是否有對應的請求頭
設置響應實體-處理結果(核心)
resp.getWriter().write("實體內容")
注意:實體內容可以分開響應